ホームページ >データベース >mysql チュートリアル >PostgreSQLスクリプトで変数を宣言および使用するにはどうすればよいですか?
はじめに
変数は SQL スクリプトで重要な役割を果たし、データを動的に保存および操作できるようにします。変数はさまざまなデータベース システム (MS-SQL など) で広く使用されていますが、変数の使用方法はプラットフォームごとに異なる場合があります。この記事では、PostgreSQL で変数を使用する方法を検討し、有効な宣言と変数を使用するためのヒントを明確にします。
答え: PostgreSQL で変数を宣言して使用します
PostgreSQL では、スクリプト内で変数を宣言して使用する方法がいくつか提供されています。各方法の詳細な説明は次のとおりです:
匿名コード ブロックを使用する (PostgreSQL 9.0 以降)
PostgreSQL バージョン 9.0 で導入された匿名コード ブロックは、変数を宣言して使用する簡単な方法を提供します。このアプローチは、変数宣言と SQL ステートメントを DO$$...$$ ブロックで囲むことで構成されます:
<code class="language-sql">DO $$ DECLARE v_List TEXT; BEGIN v_List := 'foobar'; SELECT * FROM dbo.PubLists WHERE Name = v_List; -- ... END $$;</code>
DECLARE を使用して変数を宣言します
PostgreSQL 9.0 より前では、変数は DECLARE ステートメントを使用して宣言できました。このステートメントは、特定のデータ型とオプションの初期値を使用して変数を初期化します:
<code class="language-sql">DECLARE v_List VARCHAR(8) := 'foobar'; SELECT * FROM dbo.PubLists WHERE Name = v_List;</code>
SQL ステートメントでの変数の使用
宣言後、変数の前にコロン (:) を追加することで、SQL ステートメントで変数を使用できます。 PostgreSQL はパラメータ バインディングをサポートしており、変数を SQL クエリやその他のステートメントに渡すことができます:
<code class="language-sql">SELECT * FROM dbo.PubLists WHERE Name = :v_List;</code>
その他の機能
最後に挿入された ID を取得します:
MS-SQL と同様に、PostgreSQL には匿名コード ブロックを使用して最後の挿入 ID を取得する方法が用意されています。
<code class="language-sql">DO $$ DECLARE lastid bigint; BEGIN INSERT INTO test (name) VALUES ('Test Name') RETURNING id INTO lastid; SELECT * FROM test WHERE id = lastid; END $$;</code>
完全なドキュメント:
詳細については、変数に関する公式 PostgreSQL ドキュメントを参照してください。 https://www.php.cn/link/5898493fbdf4a44a24084021b2215f85
以上がPostgreSQLスクリプトで変数を宣言および使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。