在MySQL中=和:=有什么区别? [英] What is the difference between = and := in MySQL?

查看:174
本文介绍了在MySQL中=和:=有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

两者之间有什么区别

set test_var = 20;

set test_var:=20;

他们俩似乎都分配了值?

推荐答案

它们都是赋值运算符,但我能发现它们的不同之处是=可用于执行布尔运算而:=不能.

Both of them are assignment operators but one thing I can find their differences is that = can be used to perform boolean operation while := cannot.

有效:SUM(值= 0)
无效:SUM(val:= 0)

valid: SUM(val = 0)
Invalid: SUM(val := 0)

FROM用户定义的变量

还有一件事情,您还可以在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 | 
+------+------+------+--------------------+

这篇关于在MySQL中=和:=有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆