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削除
1 |
drop database DB名 |
これでデータベース削除することができます。
1 |
drop database if exists DB名 |
として存在する場合削除することも可能です。
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^