例えば、この例に以下のテーブル定義があると仮定します。
CREATE TABLE tbl_source ( col1 INTEGER, col2 INTEGER DEFAULT 10, col3 INTEGER DEFAULT 20, col4 CHARACTER(60)); CREATE TABLE tbl_destination ( col1 INTEGER, col2 INTEGER DEFAULT 10, col3 INTEGER DEFAULT 20, col4 CHARACTER(60));
次の例では、INSERT ... SELECTリクエスト内で正しくDEFAUL関数が使用されています。
INSERT INTO tbl_destination (col1) SELECT COALESCE(col3, DEFAULT(col3)) END FROM tbl_source WHERE col3 <> DEFAULT;
この例では、DEFAULT関数は定数値と評価されます。これは、tbl_sourceのtbl_sourceのデフォルト値になります。