first aggregate allows you to get the value of one column
as ordered by another. For example,
first(temperature, time) will return the
earliest temperature value based on time within an aggregate group.
|TEXT||The value to return|
|TIMESTAMP or INTEGER||The timestamp to use for comparison|
Get the earliest temperature by device_id:
SELECT device_id, first(temp, time) FROM metrics GROUP BY device_id;
firstcommands do not use indexes, and instead perform a sequential scan through their groups. They are primarily used for ordered selection within a
GROUP BYaggregate, and not as an alternative to an
ORDER BY time DESC LIMIT 1clause to find the latest value (which will use indexes).
Found an issue on this page?Report an issue!