PostgreSQLPostgreSQL 結合UPDATE テーブル結合を伴うUPDATE 普段使う事が少ないのでつい忘れがちな結合UPDATEです。RDBMSによっても書き方が異なります。 まずは今回のテストデータは以下の通りです fruitテーブルのprice,discount項目値を、shop...2023.07.26PostgreSQL
PostgreSQLPostgreSQL パスワード変更 パスワード変更 パスワード変更はスーパーユーザもしくは自分自身でしか変更できません。 パスワード変更SQL alter user sooni WITH PASSWORD 'soopass' ; パスワード認証方式を確認するSQL 普段めった...2023.07.17PostgreSQL
PostgreSQLPostgreSQL SSL通信設定 PostgreSQLをデフォルトでインストールした状態だと、クライアントとPostgreSQLサーバ間は非SSLでの接続になっていますが、これをSSL接続できるようにします。 環境 CentOS Linux 8 OpenSSL 1.1.1k...2023.07.17PostgreSQL
PostgreSQLPostgreSQL 自動採番カラム(GENERATED ALWAYS AS IDENTITYに寄せてみる) PostgreSQL版 generated always as identityをなんとかやってみる 以前こちらの記事でPostgreSQLで自動採番を実現する例を紹介しましたが、この時自動採番対象カラムに対し、PKもしくはユニークキーを指...2023.07.10PostgreSQL
PostgreSQLPostgreSQL 配列の扱い 何かと便利な配列処理 Oracleと比べて便利と感じることいくつかありますが、PostgreSQLの配列の扱いがラクチンです。 array()関数で配列化し、array_to_string()関数で文字列化 -- 検証データ myposdb...2023.06.27PostgreSQL
pg_catalogPostgreSQL セッション一覧を確認する pg_stat_activity pg_stat_activityビューはOracleでいうv$sessionに相当すると思います。セッション一覧と記載していますが、正確には次の通りです。PostgreSQLのインスタンスではクライアントか...2023.06.23pg_catalog
PostgreSQLPostgreSQL 無名ブロックサンプル サンプル1 テストデータ作成などに利用するケース ストアドするほどではないのだけれど、とりあえず簡単なプロシージャを書きたい時や、簡単なテストデータを作成したい時など活躍します。 -- 以下サンプルプログラム用にテーブル作成 create ...2023.06.22PostgreSQL
PostgreSQLPostgreSQL ストアドプロシージャサンプル OUTパラメータ付サンプル バージョン14以降であればOUTパラメータが有効になるのですが、バージョン14未満の場合プロシージャからの戻り値を取得する場合INOUTとしないといけません。 CREATE OR REPLACE PROCEDUR...2023.06.21PostgreSQL
PostgreSQLpostgreSQLにはNVLがありません NVLとCOALESCEとCASE文 今日後輩が、「PostgreSQLにNVLないんですかぁ?」と聞いてきたのですが、、、ありません。NVLはOracle独自の関数です。(実は私も、PostgreSQLに移ってきた時には戸惑いました) 検...2023.05.19PostgreSQL
PostgreSQLPostgreSQL インデックス一覧(構成項目あり) インデックス構成項目 インデックス名とcreate index文を表示します。Oracleと異なりSELECT文で簡単にDDLを出力する事ができます。 select --t.schemaname,t.tablename, t.indexna...2023.04.20PostgreSQL