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);
结果:
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)
4条答案
按热度按时间6ljaweal1#
可以,但您需要将变量赋值移到查询中:
测试用例:
结果:
请注意,对于
SET
,=
或:=
都可以用作赋值运算符。但是,在其他语句中,赋值运算符必须是:=
而不是=
,因为=
在非SET语句中被视为比较运算符。除以下评论外,您还可以执行以下操作:
6l7fqoea2#
只需在查询周围添加括号:
5uzkadbs3#
首先让我们看看如何在mysql中定义变量
要在mysql中定义一个变量,它应该以'@'开头,如@{variable_name}和这个'{variable_name}',我们可以用我们的变量名替换它。
现在,如何在mysql中给变量赋值,我们有很多方法来实现
1.使用关键字"SET"。
示例:-
1.不使用关键字"SET"而使用":="。
示例:-
1.通过使用"SELECT"语句。
示例:-
这里,@a是用户定义的变量,1将在@a中赋值。
现在介绍如何获取或选择@{variable_name}的值。
我们可以使用如下select语句
示例:-
它将显示输出并显示@a的值。
现在,如何从表中为变量赋值。
为此,我们可以使用两个语句,如:
1.
请务必小心,emp_name必须返回单个值,否则它将在此类型语句中引发错误。
引用此命令:-http://www.easysolutionweb.com/sql-pl-sql/how-to-assign-a-value-in-a-variable-in-mysql
goqiplq24#
使用此方法,以便在运行存储过程时不显示结果。
查询: