7.2 KiB
Use OFFSET
to specify the number of rows
to skip in each InfluxQL group before returning results.
Use SOFFSET
to specify the number of series
to skip before returning results.
OFFSET
clause
The OFFSET
clause skips N
rows in each InfluxQL group before returning results.
Offsets honor row limits specified in the
LIMIT
clause
and display the limited number of rows after the specified offset.
Use LIMIT
and OFFSET
together to paginate query results.
Syntax
SELECT_clause FROM_clause [WHERE_clause] [GROUP_BY_clause] [ORDER_BY_clause] [LIMIT_clause] OFFSET N [SLIMIT_clause] [SOFFSET_clause]
Arguments
- N: Number of rows to skip in each InfluxQL group before returning results.
Notable OFFSET clause behaviors
- If there is no
LIMIT
clause in a query with anOFFSET
clause, the query returns a single row per InfluxQL group at the specified offset. - If the query doesn't include a
GROUP BY
clause, the entire result set is considered a single group and is returned in full. - If a query groups data by time, the offset is applied after aggregate and selector operations are applied to each time window.
- If the
WHERE
clause includes a time range and theOFFSET
clause causes InfluxQL to return points with timestamps outside of that time range, InfluxQL returns no results.
Examples
The following examples use the Home sensor sample data.
{{< expand-wrapper >}}
{{% expand "Return the nth row" %}}
SELECT * FROM home OFFSET 3
{{% influxql/table-meta %}} Name: home {{% /influxql/table-meta %}}
{{% influxdb/custom-timestamps %}}
time | co | hum | room | temp |
---|---|---|---|---|
2022-01-01T09:00:00Z | 0 | 35.9 | Living Room | 21.4 |
{{% /influxdb/custom-timestamps %}} {{% /expand %}}
{{% expand "Paginate results by 3 and return the 2nd page of results" %}}
SELECT * FROM home WHERE room = 'Kitchen' LIMIT 3 OFFSET 3
{{% influxql/table-meta %}} Name: home {{% /influxql/table-meta %}}
{{% influxdb/custom-timestamps %}}
time | co | hum | room | temp |
---|---|---|---|---|
2022-01-01T11:00:00Z | 0 | 36 | Kitchen | 22.4 |
2022-01-01T12:00:00Z | 0 | 36 | Kitchen | 22.5 |
2022-01-01T13:00:00Z | 1 | 36.5 | Kitchen | 22.8 |
{{% /influxdb/custom-timestamps %}} {{% /expand %}}
{{% expand "Paginate results from each series by 3 and return the 2nd page of each series" %}}
SELECT * FROM home GROUP BY * LIMIT 3 OFFSET 3
{{% influxdb/custom-timestamps %}}
{{% influxql/table-meta %}}
name: home
tags: room=Kitchen
{{% /influxql/table-meta %}}
time | co | hum | temp |
---|---|---|---|
2022-01-01T11:00:00Z | 0 | 36 | 22.4 |
2022-01-01T12:00:00Z | 0 | 36 | 22.5 |
2022-01-01T13:00:00Z | 1 | 36.5 | 22.8 |
{{% influxql/table-meta %}}
name: home
tags: room=Living Room
{{% /influxql/table-meta %}}
time | co | hum | temp |
---|---|---|---|
2022-01-01T11:00:00Z | 0 | 36 | 22.2 |
2022-01-01T12:00:00Z | 0 | 35.9 | 22.2 |
2022-01-01T13:00:00Z | 0 | 36 | 22.4 |
{{% /influxdb/custom-timestamps %}} {{% /expand %}}
{{< /expand-wrapper >}}
SOFFSET
clause
[!Important] InfluxQL is being rearchitected to work with the InfluxDB 3 storage engine. This process is ongoing and some InfluxQL features, such as
SOFFSET
are still being implemented. For more information, see InfluxQL feature support.