Heim >Datenbank >MySQL-Tutorial >Wie verwende ich Variablen im psql von PostgreSQL effektiv?
Verwendung von Skriptvariablen in PostgreSQLs psql
Die Art und Weise, wie benutzerdefinierte Skripte Variablen in PostgreSQL verwenden, unterscheidet sich von der in MS SQL Server. Verwenden Sie in psql den Befehl set
, um Variablen zu erstellen:
<code class="language-sql">\set myvariable value</code>
Um Variablen in einer Abfrage zu ersetzen, verwenden Sie die folgende Syntax:
<code class="language-sql">SELECT * FROM :myvariable.table1;</code>
Alternativ können Sie es in einer bedingten Anweisung verwenden:
<code class="language-sql">SELECT * FROM table1 WHERE :myvariable IS NULL;</code>
Ab psql 9.1 können Variablen in Anführungszeichen erweitert werden:
<code class="language-sql">\set myvariable value SELECT * FROM table1 WHERE column1 = :'myvariable';</code>
In Versionen vor psql 9.1, wenn Variablen in bedingten Zeichenfolgenabfragen verwendet werden, zum Beispiel:
<code class="language-sql">SELECT * FROM table1 WHERE column1 = ':myvariable';</code>
Die Variable selbst muss in Anführungszeichen gesetzt werden:
<code class="language-sql">\set myvariable 'value'</code>
Beachten Sie bei der String-Manipulation die folgenden Tipps:
<code class="language-sql">\set quoted_myvariable '\'' :myvariable '\''</code>
Dadurch werden Variablen in Anführungszeichen und ohne Anführungszeichen derselben Zeichenfolge erstellt, sodass Sie Folgendes tun können:
<code class="language-sql">INSERT INTO :myvariable.table1 SELECT * FROM table2 WHERE column1 = :quoted_myvariable;</code>
Das obige ist der detaillierte Inhalt vonWie verwende ich Variablen im psql von PostgreSQL effektiv?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!