PostgreSQL PostgreSQL ファンクション一覧(プロシージャ一覧) PostgreSQL ストアド一覧システムカタログの一つであるpg_catalog.pg_procテーブルを参照すればファンクション(プロシージャ含む)一覧を取得できますがポイントは以下のシステムカタログ情報関数を使って引数情報と、retu... 2022.11.28 PostgreSQL
PostgreSQL ストアドファンクション(配列を返却) CREATE FUNCTION (配列を返却)PostgreSQLの良いところの一つに配列を簡単に利用できる点です。システムで提供しているファンクションの中にも普通に返却値を配列にしているものもあります。そのせいか配列を操作する配列関数が充... 2022.11.21 PostgreSQL
PostgreSQL ストアドファンクションのソースをファイル出力 pg_get_functiondef()ソースを出力するSQLselect pg_get_functiondef((select max(t.oid) from pg_proc t ,pg_namespace n where t.prona... 2022.11.08 PostgreSQL
PostgreSQL PostgreSQL パフォーマンスチューニング用小道具 統計情報の取得インデックスの利用状況確認pg_statio_all_tables 現DB内テーブル(全て)へのアクセス状況pg_stat_all_indexes 現DB内インデックス(全て)へのアクセス状況このビューを定期的に保持すると、利... 2022.11.05 PostgreSQL
PostgreSQL PostgreSQL シーケンス(sequence) シーケンスの作成と削除シーケンスの作成SQLシーケンス名recnoを作成しています。PostgreSQLのシーケンスキャッシュのデフォルト値は1です。Oracleでの経験ですが、キャッシュ値を1にするとかなり遅くなる事経験したのでここではあ... 2022.10.30 PostgreSQL
PostgreSQL PostgreSQL 自動採番カラム 自動採番カラム自動採番にしたいカラムを連番型で定義するだけで実現できます。Oracleに比べるととても楽ちんです。内部的にはシーケンスが作成され対象カラムにマッピングされます。以下連番型(serial)を指定すると実際は()の型で作成されま... 2022.10.25 PostgreSQL
PostgreSQL PostgreSQL CSVインポート PostgreSQLではCSVのインポートが簡単に行えますCSVを用意した後、対応するテーブルをcreateしてしまえば、後はpsqlからcopyコマンドを実行するだけでインポートが完了します。Oracleの場合では、コントロールファイル(... 2022.10.16 PostgreSQL
PostgreSQL PostgreSQL 複数行の値を1行でまとめて表示する group by で指定するグループ内の複数項目を指定順番に連結し表示する。OracleではLISTAGG()関数が用意されていますが、これをPostgreSQLでは2つの関数を組み合わせて実現できます。array_agg()で配列化した後... 2022.10.16 PostgreSQL
PostgreSQL PostgreSQL ユーザを作成する create userロール作成属性を保持しているユーザ(ロール)にてcreateできます。デフォルトではpostgresユーザで作成する事になるとおもいます。作成したユーザはpg_hba.confでの制限がない限り、どのデータベースへの接... 2022.10.10 PostgreSQL
information_schema PostgreSQL テーブル構成カラム一覧 カラム一覧出力SQL以下スキーマ、テーブル名を適宜変更してお使いください。select --c.table_schema,c.table_name,c.column_name,c.ordinal_position as "position"... 2022.10.09 information_schema