docs-v2/content/flux/v0/stdlib/universe/sort.md

3.4 KiB

title description menu weight flux/v0/tags introduced
sort() function `sort()` orders rows in each input table based on values in specified columns.
flux_v0_ref
name parent identifier
sort universe universe/sort
101
transformations
0.7.0

sort() orders rows in each input table based on values in specified columns.

Output data

One output table is produced for each input table. Output tables have the same schema as their corresponding input tables.

Sorting with null values

When desc: false, null values are last in the sort order. When desc: true, null values are first in the sort order.

Function type signature
(<-tables: stream[A], ?columns: [string], ?desc: bool) => stream[A] where A: Record

{{% caption %}} For more information, see Function type signatures. {{% /caption %}}

Parameters

columns

List of columns to sort by. Default is ["_value"].

Sort precedence is determined by list order (left to right).

desc

Sort results in descending order. Default is false.

tables

Input data. Default is piped-forward data (<-).

Examples

Sort values in ascending order

import "sampledata"

sampledata.int()
    |> sort()

{{< 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

_time _value *tag
2021-01-01T00:00:00Z -2 t1
2021-01-01T00:00:50Z 4 t1
2021-01-01T00:00:20Z 7 t1
2021-01-01T00:00:10Z 10 t1
2021-01-01T00:00:40Z 15 t1
2021-01-01T00:00:30Z 17 t1
_time _value *tag
2021-01-01T00:00:20Z -3 t2
2021-01-01T00:00:50Z 1 t2
2021-01-01T00:00:10Z 4 t2
2021-01-01T00:00:40Z 13 t2
2021-01-01T00:00:00Z 19 t2
2021-01-01T00:00:30Z 19 t2

{{% /expand %}} {{< /expand-wrapper >}}