В постгресе нет полей AUTO_INCREMENT, но есть псевдо-тип данных serial, который использует последовательности для задания новых значений поля. Для получения значения, использованного для задания значения такого поля при последней
INSERT-операции можно воспользоваться функциями для работы с последовательностями:
SELECT CURRVAL(<имя_последовательности>);или
SELECT LASTVAL();
Последний вариант не требует задания имени последовательности, используемой для генерации новых значений поля, а просто возвращает значение последней использованной последовательности (точнее значение, возвращенное последней операцией nextval), что вполне подходит при использовании сразу после проведения INSERT`а.
insert ... returning id; намного красивее.
ОтветитьУдалить