hsu*_*suk 13 mysql database operators colon-equals
两者之间有什么区别
set test_var = 20;
Run Code Online (Sandbox Code Playgroud)
和
set test_var:=20;
Run Code Online (Sandbox Code Playgroud)
因为他们似乎都分配了价值?
Joh*_*Woo 10
它们都是赋值运算符,但有一点我能找到它们的区别是=
可以用来执行布尔运算而:=
不能.
有效:SUM(val = 0)
无效:SUM(val:= 0)
还有一件事,您还可以在SET以外的语句中为用户变量赋值.在这种情况下,赋值运算符必须是:=而不是=因为后者在非SET语句中被视为比较运算符=.
mysql> SET @t1=1, @t2=2, @t3:=4;
mysql> SELECT @t1, @t2, @t3, @t4 := @t1+@t2+@t3;
+------+------+------+--------------------+
| @t1 | @t2 | @t3 | @t4 := @t1+@t2+@t3 |
+------+------+------+--------------------+
| 1 | 2 | 4 | 7 |
+------+------+------+--------------------+
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3825 次 |
最近记录: |