Функция lastval() в PostgreSQL работает так, что возвращает последнее полученное значение из последовательности в текущей сессии. 12
В отличие от функции currval(), которая явно ссылается на конкретную последовательность, lastval автоматически возвращает значение от последнего вызова функции nextval(), независимо от используемой последовательности. 1
Если nextval ещё не вызывалась в текущей сессии, при попытке выполнить lastval возникнет ошибка. 3