PREVIOUS VALUE FOR sequence_name

MariaDB starting with 10.3

SEQUENCEs were introduced in MariaDB 10.3.

Syntax

PREVIOUS VALUE FOR sequence_name

or

LASTVAL(sequence_name)

or in Oracle mode (SQL_MODE=ORACLE)

sequence_name.currval

PREVIOUS VALUE FOR is IBM DB2 syntax while LASTVAL() is PostgreSQL syntax.

Description

Get last value in the current connection generated from a sequence.

  • If the sequence has not yet been used by the connection, PREVIOUS VALUE FOR returns NULL (same thing applies when the server is restarted, a new connection doesn't see a last value for an existing sequence).
  • If a SEQUENCE has been dropped and re-created then it's treated as a new SEQUENCE and PREVIOUS VALUE FOR will return NULL.
  • FLUSH TABLES has no effect on PREVIOUS VALUE FOR.
  • Previous values for all used sequences are stored per connection until connection ends.

PREVIOUS VALUE FOR requires the SELECT privilege.

Example

SELECT PREVIOUS VALUE FOR s;
+----------------------+
| PREVIOUS VALUE FOR s |
+----------------------+
|                  100 |
+----------------------+

See Also

Comments

Comments loading...
Content reproduced on this site is the property of its respective owners, and this content is not reviewed in advance by MariaDB. The views, information and opinions expressed by this content do not necessarily represent those of MariaDB or any other party.