Cả hai đều là toán tử gán nhưng một điều tôi có thể tìm thấy sự khác biệt của chúng là =
có thể được sử dụng để thực hiện thao tác boolean trong khi :=
không thể.
hợp lệ :SUM (val =0)
Không hợp lệ:SUM (val:=0)
TỪ biến do người dùng xác định
Một điều nữa, Bạn cũng có thể gán giá trị cho một biến người dùng trong các câu lệnh khác ngoài SET. Trong trường hợp này, toán tử gán phải là:=chứ không phải =vì toán tử sau được coi là toán tử so sánh =trong các câu lệnh không phải SET.
mysql> SET @t1=1, @t2=2, @t3:=4;
mysql> SELECT @t1, @t2, @t3, @t4 := @[email protected][email protected];
+------+------+------+--------------------+
| @t1 | @t2 | @t3 | @t4 := @[email protected][email protected] |
+------+------+------+--------------------+
| 1 | 2 | 4 | 7 |
+------+------+------+--------------------+