Im Gegensatz zu MS SQL Server unterstützt PostgreSQL nicht die Deklaration von Variablen mithilfe der DECLARE-Anweisung. Um Variablen in PostgreSQL-Abfragen zu verwenden, können Sie alternativ die WITH-Klausel verwenden.
Grammatik:
<code class="language-sql">WITH 变量名 AS ( SELECT 表达式 AS 名称 ) SELECT * FROM 表名 WHERE 列名 = 变量名</code>
Beispiel:
Betrachten Sie die folgende MS SQL Server-Abfrage:
<code class="language-sql">DECLARE @myvar INT; SET @myvar = 5; SELECT * FROM somewhere WHERE something = @myvar;</code>
Um die gleiche Funktionalität in PostgreSQL mit der WITH-Klausel zu erreichen:
<code class="language-sql">WITH myvar AS ( SELECT 5 AS var ) SELECT * FROM somewhere WHERE something = myvar;</code>
Hinweis:
Obwohl die WITH-Klausel eine Möglichkeit bietet, Variablen in PostgreSQL-Abfragen zu deklarieren, wird sie im Allgemeinen nicht als die eleganteste oder effizienteste Methode angesehen. Bei komplexen Abfragen, die möglicherweise mehrere Variablen erfordern, kann dies zu unübersichtlichem und weniger lesbarem Code führen. In diesem Fall ist es besser, eine temporäre Tabelle zu erstellen oder eine gespeicherte Prozedur zu verwenden, um die mit den Variablen verbundene Logik zu kapseln.
Das obige ist der detaillierte Inhalt vonWie deklariere ich Variablen in PostgreSQL-Abfragen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!