Computer >> Máy Tính >  >> Lập trình >> MySQL

Mức độ ưu tiên của toán tử MySQL có thể ảnh hưởng đến tập kết quả như thế nào?


MySQL tuân theo thứ tự ưu tiên toán tử và nó có danh sách các toán tử sau, có cùng thứ tự ưu tiên nằm trên cùng một dòng -

INTERVAL
BINARY, COLLATE
!
- (unary minus), ~ (unary bit inversion)
^
*, /, DIV, %, MOD
-, +
<<, >>
&
|
=, <=>, >=, >, <=, <, <>, !=, IS, LIKE, REGEXP, IN
BETWEEN, CASE, WHEN, THEN, ELSE
NOT
&&, AND
XOR
||, OR
:=

Đối với các toán tử xảy ra ở cùng mức ưu tiên trong một biểu thức, việc đánh giá sẽ tiến hành từ trái sang phải.

Ví dụ

Sau đây là một ví dụ cho thấy ảnh hưởng của mức độ ưu tiên của toán tử đối với tập kết quả -

mysql> Select 5+3/2-2;
+---------+
| 5+3/2-2 |
+---------+
| 4.5000  |
+---------+
1 row in set (0.00 sec)

Trong đánh giá trên, MySQL đánh giá / (div) trước tiên vì nó được ưu tiên cao hơn + (Phép cộng) hoặc - (Phép trừ).