Nói tóm lại, khi sử dụng SET
cả hai đều đóng vai trò như các nhà khai thác chuyển nhượng, nhưng trong bất kỳ tuyên bố không thiết lập, :=
là dành cho assingment và =
kiểm tra cho bình đẳng.
Đối với SET, hoặc = hoặc: = có thể được sử dụng làm toán tử gán.
Bạn cũng có thể gán giá trị cho 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, các nhà điều hành phân công phải là: = và không = vì = được coi là một toán tử so sánh trong báo cáo phi 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 |
+------+------+------+--------------------+
Taken từ MySQL 8.4 User Defined Variables
Nguồn
2010-02-04 15:09:49
Dường như nó không được chấp nhận: 'mysql> @num: = 0;' sẽ đưa ra lỗi. – user198729
Đó có phải là một câu lệnh MySQL hợp lệ không? Bạn có thể định nghĩa các biến như thế không? –
Vì lợi ích của bất kỳ ai đọc những nhận xét này, nó không được dùng nữa. Và cảm ơn @AnthonyForloney vì đã phổ biến những điều cơ bản. Đây là lý do tại sao tôi yêu stackoverflow. – billynoah