PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

PostgreSQL nextval et currval dans la même requête

Une solution possible

SELECT nextval nextval1, nextval nextval2
  FROM
(
  SELECT NEXTVAL('seq_name') nextval
) q

Voici SQLFiddle démo.

MISE À JOUR Pour insérer à la place de INSERT INTO ... VALUES utilisez INSERT INTO ... SELECT

INSERT INTO Table1 (col1, col2, col3, col4, ...) 
SELECT nextval, nextval, 5, 'Text value', ...
  FROM
(
  SELECT NEXTVAL('seq_name') nextval
) q