在 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中文网其他相关文章!