Rumah >pangkalan data >tutorial mysql >Bagaimanakah Saya Mengisytiharkan dan Menggunakan Pembolehubah dalam Pertanyaan PostgreSQL?

Bagaimanakah Saya Mengisytiharkan dan Menggunakan Pembolehubah dalam Pertanyaan PostgreSQL?

Barbara Streisand
Barbara Streisandasal
2025-01-21 10:09:09920semak imbas

How Do I Declare and Use Variables in PostgreSQL Queries?

Pengisytiharan dan Penggunaan Pembolehubah PostgreSQL

Tidak seperti MS SQL Server, PostgreSQL tidak mengisytiharkan pembolehubah dengan cara yang sama. Sebaliknya, klausa WITH menyediakan mekanisme untuk mentakrif dan memberikan nilai kepada pembolehubah dalam pertanyaan.

Mengisytiharkan Pembolehubah PostgreSQL

Sintaks untuk mengisytiharkan pembolehubah dalam pertanyaan PostgreSQL menggunakan klausa WITH:

<code class="language-sql">WITH <variable_name> AS (<value>)</code>

Sebagai contoh, untuk mencipta pembolehubah integer myvar dengan nilai 5, sintaksnya ialah:

<code class="language-sql">WITH myvar AS (SELECT 5)</code>

Perhatikan bahawa anda mesti menetapkan nilai menggunakan pernyataan SELECT dalam klausa AS.

Menggunakan Pembolehubah Diisytiharkan

Selepas mengisytiharkan pembolehubah, anda boleh menggunakannya dalam pertanyaan anda dengan merujuk namanya. Sebagai contoh, pertanyaan ini mendapatkan semula semua baris daripada jadual somewhere di mana lajur something sepadan dengan nilai myvar:

<code class="language-sql">WITH myvar AS (SELECT 5)
SELECT *
FROM somewhere
WHERE something = (SELECT * FROM myvar);</code>

Ingat, klausa WITH mesti mendahului pernyataan SELECT. Nilai pembolehubah diakses menggunakan subkueri yang merujuk nama pembolehubah.

Atas ialah kandungan terperinci Bagaimanakah Saya Mengisytiharkan dan Menggunakan Pembolehubah dalam Pertanyaan PostgreSQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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