[PostgreSQL]Serial型フィールドのシーケンス名を求める

pg_get_serial_sequence関数

Serial型フィールドはシーケンスと関連付けられていて、レコード挿入時に自動採番されます。

(*)実際は、フィールドの初期値が nextval(シーケンス名) となっていて、INSERT時にNULLの場合インクリメントされる仕組み

関連づけられたシーケンス名を求めるには pg_get_serial_sequence() を使います。

以下のSQLを実行することにより、シーケンス名が求まります。

SELECT pg_get_serial_sequence('テーブル名', 'フィールド名');
   pg_get_serial_sequence   
----------------------------
 public.シーケンス名
(1 行)