PostgreSQL lastval() 函数使用指南
PostgreSQL lastval()
函数返回当前会话中最近一次 nextval()
函数的调用结果。如果当前会话没有调用过 nextval()
函数,将会发生一个错误。
lastval()
函数与 currval()
函数类似,除了 lastval()
函数不需要指定序列名称。
lastval()
语法
这里是 PostgreSQL lastval()
函数的语法:
lastval() -> BIGINT
参数
PostgreSQL lastval()
函数不需要任何参数。
返回值
PostgreSQL lastval()
函数返回当前会话中最近一次 nextval()
函数的调用结果。
如果在当前会话中没有调用过 nextval()
函数,那将会发生一个错误。
lastval()
示例
首先,让我们使用 CREATE SEQUENCE
语句创建一个简单的序列生成器 my_sequence
:
DROP SEQUENCE IF EXISTS my_sequence;
CREATE SEQUENCE my_sequence START 100;
这里,我们创建了一个名称为 my_sequence
序列生成器,它的起始值是 100。
然后,让我们使用 PostgreSQL nextval()
函数将序列 my_sequence
前进一位并返回最新的值:
SELECT nextval('my_sequence');
nextval
---------
100
让我们使用 lastval()
函数返回序列 my_sequence
的当前值:
SELECT lastval();
lastval
---------
100
这里,lastval()
函数的返回值和最近一次 nextval()
函数的返回值是一样的。