PostgreSQLチートシート

PostgreSQLチートシート

インサート文でサロゲートキーは省略できる

insert into テーブル名 (id,….) values (1,…)

と言うように書くこともできますが、idがシーケンスオブジェクトの場合はid指定は省略可能です。

明示したい場合はnextval(“hoge”)は関数なので、values句にnextval(“hoge”)と書きます。

insert into テーブル名 (id,….) values (nextval(“hoge”),…)

 

※select nextval(“hoge”)ではない

シーケンスオブジェクトの次の値

select nextval(“シーケンスオブジェクト名”)で取得ができます。

再度実行すると、インクリメントされた値が取得出来ます。

NVLの代わりにCOALESCEを使う

PostgreSQLにはOracldeで言うNVLがないです。代わりにCOALESCEを使います。

PostgreSQL9.5からmerge文が使える

ON CONFLICT句を使用すればINSERT、コンフリクトしたら何もしない、もしくはアップデート、などのmerge文が実行できます。

DataBase削除

drop database DB名

これでデータベース削除することができます。

drop database if exists DB名

として存在する場合削除することも可能です。

カラム追加

alter table テーブル名 ADD COLUMN カラム名 型

型はtextなどです。

カラム名変更

alter table テーブル名 RENAME NAME 現在のカラム名 TO 新しいカラム名

コメント

タイトルとURLをコピーしました