first aggregate allows you to get the value of one column
as ordered by another. For example, first(temperature, time) returns the
earliest temperature value based on time within an aggregate group.
The
last and first commands do not use indexes, they perform a sequential
scan through the group. They are primarily used for ordered selection within a
GROUP BY aggregate, and not as an alternative to an
ORDER BY time DESC LIMIT 1 clause to find the latest value, which uses
indexes.Samples
Get the earliest temperature by device_id:Arguments
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
value | TEXT | - | ✔ | The value to return |
time | TIMESTAMP or INTEGER | - | ✔ | The timestamp to use for comparison |