在MySQL中,这两个命令有什么区别?
它们工作得很完美,结果总是一样的:
set @numRecords = (select count(*) from config);
set @numRecords := (select count(*) from config);谢谢戴维德
发布于 2016-06-16 21:36:38
引用MySQL 5.7参考手册,第10.4节用户定义的变量
对于SET,可以使用=或:=作为赋值运算符。 还可以在SET以外的语句中为用户变量赋值。在这种情况下,赋值运算符必须是:=,而不是=,因为后者被视为非SET语句中的比较运算符=。
发布于 2016-06-16 21:39:11
"=“是模棱两可的,可能是比较运算符。":=“总是被解释为赋值运算符。这些信息可以在http://dev.mysql.com/doc/refman/5.7/en/assignment-operators.html上找到。
https://stackoverflow.com/questions/37869719
复制相似问题