與 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中文網其他相關文章!