Outdated Version
You are viewing an older version of this section. View current production version.
FIRST
An aggregate function that returns the first value of a set of input values, defined as the value associated with the minimum time.
Syntax
FIRST (value[, time]);
Arguments
- value: column value to return
- time: time expression for comparison. The expression should be one of the following types:
DATETIME
,DATETIME(6)
,TIMESTAMP
,TIMESTAMP(6)
. If no time expression is specified, then theSERIES TIMESTAMP
is used to defined the time order. Only oneSERIES TIMESTAMP
can appear in tables used in the query if thetime
argument is omitted.
Return Type
The first value of a set of input rows, as ordered by the time column.
Remarks
- If there are multiple instances of the same minimum time expression, then this function returns an arbitrary value from among the values corresponding with that minimum.
- The function returns an error if there are multiple
SERIES TIMESTAMP
columns involved, or one is needed due to omission of thetime
argument but none is present. For example, if more than one table in theFROM
clause has aSERIES TIMESTAMP
, then it becomes ambiguous which timestamp to use. Hence, theSERIES TIMESTAMP
to be used must be specified in the second argument of theFIRST
function.
Example
The following examples display the use of FIRST
function.
CREATE TABLE table1 (a INT, b DATETIME SERIES TIMESTAMP);
INSERT INTO table1 values (1, "2019-03-14 06:28:00"), (2, "2019-04-14 06:28:00"), (3, "2018-03-14 06:28:00");
SELECT FIRST (a) FROM table1;
+--------------+
| FIRST (a) |
+--------------+
| 3 |
+--------------+
SELECT FIRST (a, b) FROM table1;
****
+--------------+
| FIRST (a, b) |
+--------------+
| 3 |
+--------------+