Rumah >pangkalan data >tutorial mysql >Bagaimana untuk Mengisytiharkan Pembolehubah dalam Pertanyaan PostgreSQL?
Tidak seperti MS SQL Server, PostgreSQL tidak menyokong pengisytiharan pembolehubah menggunakan pernyataan DECLARE. Untuk menggunakan pembolehubah dalam pertanyaan PostgreSQL, anda boleh menggunakan klausa WITH sebagai alternatif.
Tatabahasa:
<code class="language-sql">WITH 变量名 AS ( SELECT 表达式 AS 名称 ) SELECT * FROM 表名 WHERE 列名 = 变量名</code>
Contoh:
Pertimbangkan pertanyaan MS SQL Server berikut:
<code class="language-sql">DECLARE @myvar INT; SET @myvar = 5; SELECT * FROM somewhere WHERE something = @myvar;</code>
Untuk mencapai fungsi yang sama dalam PostgreSQL menggunakan klausa WITH:
<code class="language-sql">WITH myvar AS ( SELECT 5 AS var ) SELECT * FROM somewhere WHERE something = myvar;</code>
Nota:
Walaupun klausa WITH menyediakan cara untuk mengisytiharkan pembolehubah dalam pertanyaan PostgreSQL, ia secara amnya tidak dianggap sebagai kaedah yang paling elegan atau cekap. Untuk pertanyaan kompleks yang mungkin memerlukan berbilang pembolehubah, ia boleh membawa kepada kod yang berantakan dan kurang boleh dibaca. Dalam kes ini, adalah lebih baik untuk membuat jadual sementara atau menggunakan prosedur tersimpan untuk merangkum logik yang berkaitan dengan pembolehubah.
Atas ialah kandungan terperinci Bagaimana untuk Mengisytiharkan Pembolehubah dalam Pertanyaan PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!