title |
description |
menu |
weight |
flux/v0/tags |
introduced |
distinct() function |
`distinct()` returns all unique values in a specified column.
|
flux_v0_ref |
name |
parent |
identifier |
distinct |
universe |
universe/distinct |
|
|
101 |
transformations |
selectors |
|
0.7.0 |
distinct()
returns all unique values in a specified column.
The _value
of each output record is set to a distinct value in the specified column.
null
is considered its own distinct value if present.
Function type signature
(<-tables: stream[A], ?column: string) => stream[B] where A: Record, B: Record
{{% caption %}}
For more information, see Function type signatures.
{{% /caption %}}
Parameters
column
Column to return unique values from. Default is _value
.
tables
Input data. Default is piped-forward data (<-
).
Examples
Return distinct values from the _value column
import "sampledata"
sampledata.int()
|> distinct()
{{< expand-wrapper >}}
{{% expand "View example input and output" %}}
Input data
_time |
_value |
*tag |
2021-01-01T00:00:00Z |
-2 |
t1 |
2021-01-01T00:00:10Z |
10 |
t1 |
2021-01-01T00:00:20Z |
7 |
t1 |
2021-01-01T00:00:30Z |
17 |
t1 |
2021-01-01T00:00:40Z |
15 |
t1 |
2021-01-01T00:00:50Z |
4 |
t1 |
_time |
_value |
*tag |
2021-01-01T00:00:00Z |
19 |
t2 |
2021-01-01T00:00:10Z |
4 |
t2 |
2021-01-01T00:00:20Z |
-3 |
t2 |
2021-01-01T00:00:30Z |
19 |
t2 |
2021-01-01T00:00:40Z |
13 |
t2 |
2021-01-01T00:00:50Z |
1 |
t2 |
Output data
*tag |
_value |
t1 |
-2 |
t1 |
10 |
t1 |
7 |
t1 |
17 |
t1 |
15 |
t1 |
4 |
*tag |
_value |
t2 |
19 |
t2 |
4 |
t2 |
-3 |
t2 |
13 |
t2 |
1 |
{{% /expand %}}
{{< /expand-wrapper >}}
Return distinct values from a non-default column
import "sampledata"
sampledata.int()
|> distinct(column: "tag")
{{< expand-wrapper >}}
{{% expand "View example input and output" %}}
Input data
_time |
_value |
*tag |
2021-01-01T00:00:00Z |
-2 |
t1 |
2021-01-01T00:00:10Z |
10 |
t1 |
2021-01-01T00:00:20Z |
7 |
t1 |
2021-01-01T00:00:30Z |
17 |
t1 |
2021-01-01T00:00:40Z |
15 |
t1 |
2021-01-01T00:00:50Z |
4 |
t1 |
_time |
_value |
*tag |
2021-01-01T00:00:00Z |
19 |
t2 |
2021-01-01T00:00:10Z |
4 |
t2 |
2021-01-01T00:00:20Z |
-3 |
t2 |
2021-01-01T00:00:30Z |
19 |
t2 |
2021-01-01T00:00:40Z |
13 |
t2 |
2021-01-01T00:00:50Z |
1 |
t2 |
Output data
{{% /expand %}}
{{< /expand-wrapper >}}
Return distinct values from data with null values
import "sampledata"
sampledata.int(includeNull: true)
|> distinct()
{{< expand-wrapper >}}
{{% expand "View example input and output" %}}
Input data
_time |
_value |
*tag |
2021-01-01T00:00:00Z |
-2 |
t1 |
2021-01-01T00:00:10Z |
|
t1 |
2021-01-01T00:00:20Z |
7 |
t1 |
2021-01-01T00:00:30Z |
|
t1 |
2021-01-01T00:00:40Z |
|
t1 |
2021-01-01T00:00:50Z |
4 |
t1 |
_time |
_value |
*tag |
2021-01-01T00:00:00Z |
|
t2 |
2021-01-01T00:00:10Z |
4 |
t2 |
2021-01-01T00:00:20Z |
-3 |
t2 |
2021-01-01T00:00:30Z |
19 |
t2 |
2021-01-01T00:00:40Z |
|
t2 |
2021-01-01T00:00:50Z |
1 |
t2 |
Output data
*tag |
_value |
t1 |
-2 |
t1 |
|
t1 |
7 |
t1 |
4 |
*tag |
_value |
t2 |
|
t2 |
4 |
t2 |
-3 |
t2 |
19 |
t2 |
1 |
{{% /expand %}}
{{< /expand-wrapper >}}