ホームページ >データベース >mysql チュートリアル >PostgreSQL クエリで変数を宣言するにはどうすればよいですか?

PostgreSQL クエリで変数を宣言するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2025-01-21 10:01:09234ブラウズ

How to Declare Variables in PostgreSQL Queries?

PostgreSQL クエリで変数を宣言する方法

MS SQL Server とは異なり、PostgreSQL は DECLARE ステートメントを使用した変数の宣言をサポートしていません。 PostgreSQL クエリで変数を使用するには、代わりに WITH 句を使用できます。

文法:

<code class="language-sql">WITH 变量名 AS (
   SELECT 表达式 AS 名称
)
SELECT *
FROM 表名
WHERE 列名 = 变量名</code>

例:

次の MS SQL Server クエリについて考えてみましょう:

<code class="language-sql">DECLARE @myvar INT;
SET @myvar = 5;
SELECT * FROM somewhere WHERE something = @myvar;</code>

WITH 句を使用して PostgreSQL で同じ機能を実現するには:

<code class="language-sql">WITH myvar AS (
   SELECT 5 AS var
)
SELECT *
FROM somewhere
WHERE something = myvar;</code>

注:

WITH 句は、PostgreSQL クエリで変数を宣言する方法を提供しますが、一般に、最もエレガントまたは効率的な方法とは考えられていません。複数の変数を必要とする複雑なクエリの場合、コードが乱雑で読みにくくなる可能性があります。この場合、一時テーブルを作成するか、ストアド プロシージャを使用して変数に関連するロジックをカプセル化することをお勧めします。

以上がPostgreSQL クエリで変数を宣言するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。