docs-v2/content/influxdb/v1/flux/guides/sort-limit.md

2.2 KiB

title seotitle list_title description menu weight list_query_example canonical alt_links
Sort and limit data with Flux Sort and limit data in InfluxDB with Flux Sort and limit Use the `sort()`function to order records within each table by specific columns and the `limit()` function to limit the number of records in output tables to a fixed number, `n`.
influxdb_v1
name parent
Sort and limit Query with Flux
3 sort_limit /influxdb/v2/query-data/flux/sort-limit/
v2
/influxdb/v2/query-data/flux/sort-limit/

Use the sort()function to order records within each table by specific columns and the limit() function to limit the number of records in output tables to a fixed number, n.

If you're just getting started with Flux queries, check out the following:

Example sorting system uptime

The following example orders system uptime first by region, then host, then value.

from(bucket:"db/rp")
  |> range(start:-12h)
  |> filter(fn: (r) =>
    r._measurement == "system" and
    r._field == "uptime"
  )
  |> sort(columns:["region", "host", "_value"])

The limit() function limits the number of records in output tables to a fixed number, n. The following example shows up to 10 records from the past hour.

from(bucket:"db/rp")
  |> range(start:-1h)
  |> limit(n:10)

You can use sort() and limit() together to show the top N records. The example below returns the 10 top system uptime values sorted first by region, then host, then value.

from(bucket:"db/rp")
  |> range(start:-12h)
  |> filter(fn: (r) =>
    r._measurement == "system" and
    r._field == "uptime"
  )
  |> sort(columns:["region", "host", "_value"])
  |> limit(n:10)

You now have created a Flux query that sorts and limits data. Flux also provides the top() and bottom() functions to perform both of these functions at the same time.