Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengisytiharkan Pembolehubah dalam Pertanyaan PostgreSQL?

Bagaimana untuk Mengisytiharkan Pembolehubah dalam Pertanyaan PostgreSQL?

Linda Hamilton
Lepaskan: 2025-01-21 10:01:09
asal
233 orang telah melayarinya

How to Declare Variables in PostgreSQL Queries?

Cara 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>
Salin selepas log masuk

Contoh:

Pertimbangkan pertanyaan MS SQL Server berikut:

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

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>
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan