LAST

A function that returns the last value of a set of input values, defined as the value associated with the maximum time.

Syntax

LAST (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 the SERIES TIMESTAMP is used to define the time order. Only one SERIES TIMESTAMP can appear in tables used in the query if the time argument is omitted.

Return Type

The last value of a set of input rows, as ordered by the time column.

Remarks

  • If there are multiple instances of the same maximum time expression, then this function returns an arbitrary value from among the values corresponding with that maximum.

  • The function returns an error if there are multiple SERIES TIMESTAMP columns involved, or one is needed due to omision of the time argument but none is present. For example, if more than one table in the FROM clause has a SERIES TIMESTAMP, then it becomes ambiguous which timestamp to use. Hence, the SERIES TIMESTAMP to be used must be specified in the second argument of the LAST function.

Example

The following examples display the use of LAST function.

CREATE TABLE f_table (a INT, b DATETIME SERIES TIMESTAMP);
INSERT INTO f_table values (1, '2019-03-14 06:28:00'), (2, '2019-04-14 06:28:00'), (3, '2018-03-14 06:28:00');
SELECT LAST (a) FROM f_table;
+----------+
| LAST (a) |
+----------+
|        2 |
+----------+
SELECT LAST (a, b) FROM f_table;
+--------------+
| LAST (a, b)  |
+--------------+
|            2 |
+--------------+

Last modified: February 27, 2023

Was this article helpful?