Menetapkan Pembolehubah Pengguna daripada Keputusan Pertanyaan dalam MySQL
Ia adalah mungkin untuk mengisi pembolehubah pengguna dengan output pertanyaan dalam MySQL. Untuk mencapai matlamat ini, masukkan penugasan pembolehubah dalam pertanyaan itu sendiri. Contohnya:
<code class="mysql">SET @user := 123456; SELECT @group := `group` FROM user WHERE user = @user; SELECT * FROM user WHERE `group` = @group;</code>
Uji ini dengan mencipta jadual:
<code class="mysql">CREATE TABLE user (`user` int, `group` int); INSERT INTO user VALUES (123456, 5); INSERT INTO user VALUES (111111, 5);</code>
Output yang terhasil menunjukkan cara pembolehubah pengguna @group diisi dengan ID kumpulan yang sesuai:
<code class="mysql">SET @user := 123456; SELECT @group := `group` FROM user WHERE user = @user; SELECT * FROM user WHERE `group` = @group; +--------+-------+ | user | group | +--------+-------+ | 123456 | 5 | | 111111 | 5 | +--------+-------+ 2 rows in set (0.00 sec)</code>
Nota: Anda boleh menggunakan sama ada = atau : = sebagai pengendali tugasan dalam penyata SET. Walau bagaimanapun, dalam konteks lain, hanya : = harus digunakan sebagai = adalah pembanding dalam keadaan tersebut.
Kemas kini:
Pendekatan alternatif ialah menggunakan klausa LIMIT :
<code class="mysql">SET @user := 123456; SELECT `group` FROM user LIMIT 1 INTO @group; SELECT * FROM user WHERE `group` = @group;</code>
Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Pembolehubah Pengguna daripada Keputusan Pertanyaan dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!