Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Menetapkan Keputusan Pertanyaan SQL kepada Pembolehubah?

Bagaimanakah Saya Boleh Menetapkan Keputusan Pertanyaan SQL kepada Pembolehubah?

Mary-Kate Olsen
Lepaskan: 2025-01-05 16:56:42
asal
116 orang telah melayarinya

How Can I Assign SQL Query Results to Variables?

Menetapkan Keputusan Pertanyaan kepada Pembolehubah SQL

Menetapkan hasil panggilan exec kepada pembolehubah dalam SQL tidak boleh dilakukan menggunakan sintaks yang disediakan. Walau bagaimanapun, terdapat pendekatan alternatif untuk mendapatkan semula data daripada prosedur yang disimpan atau melaksanakan pertanyaan.

Parameter Output

Jika anda perlu mendapatkan satu nilai daripada prosedur yang disimpan, anda boleh menggunakan parameter keluaran. Parameter keluaran ialah pembolehubah yang dihantar kepada prosedur tersimpan dan diubah suai dalam prosedur. Nilai yang diubah suai kemudian dikembalikan kepada kod panggilan.

Contoh:

Pertimbangkan prosedur tersimpan berikut yang mengambil dua parameter dan memberikan nilai DATE kepada parameter output:

CREATE PROCEDURE up_GetBusinessDay 
(
    @Date Date,
    @Offset Int,
    @NextBusinessDay Date OUTPUT
)
AS
BEGIN
    -- Code to calculate the NextBusinessDay 
    SET @NextBusinessDay = '2023-03-15'
END
GO
Salin selepas log masuk

Anda boleh memanggil prosedur tersimpan ini daripada kod anda dan menentukan parameter output pembolehubah:

DECLARE @NextBusinessDay DATE;

EXEC up_GetBusinessDay @Date = '2023-03-08', @Offset = -1, @NextBusinessDay OUTPUT;

SELECT @NextBusinessDay;
Salin selepas log masuk

Ini akan mengembalikan nilai DATE yang dikira dalam prosedur tersimpan kepada pembolehubah @NextBusinessDay.

Nilai Pulangan

Pilihan lain adalah menggunakan nilai pulangan untuk menunjukkan kejayaan atau kegagalan prosedur atau pertanyaan yang disimpan. Nilai pulangan ialah nilai integer tunggal yang dikembalikan kepada kod panggilan.

Contoh:

Prosedur tersimpan berikut mengembalikan nilai pulangan 1 jika nilai input lebih besar daripada 5, jika tidak ia mengembalikan 0:

CREATE PROCEDURE YourProcedure 
(
    @Param Int
)
AS
BEGIN
    IF @Param > 5
        RETURN 1;
    ELSE
        RETURN 0;
END
GO
Salin selepas log masuk

Anda boleh mengendalikan nilai pulangan dalam kod anda menggunakan pengendalian ralat mekanisme.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menetapkan Keputusan Pertanyaan SQL kepada Pembolehubah?. 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