首頁  >  文章  >  資料庫  >  如何在不使用巢狀查詢的情況下從 MySQL 中的查詢結果指派使用者變數?

如何在不使用巢狀查詢的情況下從 MySQL 中的查詢結果指派使用者變數?

Susan Sarandon
Susan Sarandon原創
2024-10-27 06:27:031000瀏覽

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

從 MySQL 中的查詢結果分配使用者變數

背景和目的

根據查詢結果分配使用者定義的變數可以增強資料庫操作能力。本文探討了在 MySQL 中實現此目的的方法,而無需借助嵌套查詢。

使用者變數賦值語法

與流行的看法相反,使用者變數賦值可以直接整合到查詢中。 SET 語句的賦值運算子是= 或:=。但是,:= 必須在其他語句中使用,因為 = 保留用於比較。

查詢範例

為了說明此技術,我們假設 USER 和 GROUP 是唯一的。以下查詢序列展示了此功能:

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

範例資料和結果

使用包含下列資料的範例表:

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

查詢產生下列結果結果:

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

替代方法

作為替代,可以採用以下語法:

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

以上是如何在不使用巢狀查詢的情況下從 MySQL 中的查詢結果指派使用者變數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn