Rumah  >  Artikel  >  pangkalan data  >  Bagaimanakah Saya Boleh Menetapkan Pembolehubah Pengguna daripada Keputusan Pertanyaan dalam MySQL tanpa Menggunakan Pertanyaan Bersarang?

Bagaimanakah Saya Boleh Menetapkan Pembolehubah Pengguna daripada Keputusan Pertanyaan dalam MySQL tanpa Menggunakan Pertanyaan Bersarang?

Susan Sarandon
Susan Sarandonasal
2024-10-27 06:27:031000semak imbas

How Can I Assign User Variables from Query Results in MySQL without Using Nested Queries?

Penugasan Pembolehubah Pengguna daripada Hasil Pertanyaan dalam MySQL

Latar Belakang dan Objektif

Menetapkan pembolehubah yang ditentukan pengguna berdasarkan hasil pertanyaan meningkatkan keupayaan manipulasi pangkalan data. Artikel ini meneroka kaedah untuk mencapai ini dalam MySQL tanpa menggunakan pertanyaan bersarang.

Sintaks Tugasan Pembolehubah Pengguna

Bertentangan dengan kepercayaan popular, tugasan pembolehubah pengguna boleh disepadukan terus ke dalam pertanyaan. Pengendali tugasan untuk pernyataan SET ialah sama ada = atau :=. Walau bagaimanapun, := mesti digunakan dalam penyataan lain, kerana = dikhaskan untuk perbandingan.

Contoh Pertanyaan

Untuk menggambarkan teknik ini, mari kita anggap USER dan GROUP adalah unik. Urutan pertanyaan berikut mempamerkan fungsi:

SET @user := 123456;
SELECT @group := `group` FROM USER WHERE user = @user;
SELECT * FROM USER WHERE `group` = @group;

Data Sampel dan Keputusan

Menggunakan jadual sampel dengan data berikut:

CREATE TABLE user (`user` int, `group` int);
INSERT INTO user VALUES (123456, 5);
INSERT INTO user VALUES (111111, 5);

Pertanyaan menghasilkan yang berikut hasil:

+--------+-------+
| user   | group |
+--------+-------+
| 123456 |     5 |
| 111111 |     5 |
+--------+-------+

Pendekatan Alternatif

Sebagai alternatif, sintaks berikut boleh digunakan:

SET @user := 123456;
SELECT `group` FROM user LIMIT 1 INTO @group;
SELECT * FROM user WHERE `group` = @group;

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menetapkan Pembolehubah Pengguna daripada Keputusan Pertanyaan dalam MySQL tanpa Menggunakan Pertanyaan Bersarang?. 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