在MySQL 中將查詢結果作為使用者變數存取
在MySQL 中根據查詢結果設定使用者變數是可行的,減少了嵌入套查詢的需要.
方法:
要實現此目的,請將變數賦值合併到查詢本身:
<code class="mysql">SET @user := 123456; SELECT @group := `group` FROM user WHERE user = @user; SELECT * FROM user WHERE `group` = @group;</code>
範例:
考慮一個名為「user」的表,其中包含「user」和「group」欄位:
<code class="mysql">CREATE TABLE user (`user` int, `group` int); INSERT INTO user VALUES (123456, 5); INSERT INTO user VALUES (111111, 5);</code>
查詢:
<code class="mysql">SET @user := 123456; SELECT @group := `group` FROM user WHERE user = @user; SELECT * FROM user WHERE `group` = @group;</code>
輸出:
<code class="mysql">+--------+-------+ | user | group | +--------+-------+ | 123456 | 5 | | 111111 | 5 | +--------+-------+ 2 rows in set (0.00 sec)</code>
替代方法:
另一種方法是在子中使用「LIMIT 1」:
<code class="mysql">SET @user := 123456; SELECT `group` FROM user LIMIT 1 INTO @group; SELECT * FROM user WHERE `group` = @group;</code>
請記住在SET 語句中使用:= 作為賦值運算子。非 SET 語句需要 := 進行賦值,而 = 被視為比較運算子。
以上是以下是一些基於您的問題格式文字的文章標題: * 如何在 MySQL 中存取作為使用者變數的查詢結果? * 我可以根據MySQL中的查詢結果來指派使用者變數嗎? * 什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!