Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> MySQL

Độ ưu tiên của toán tử AND và OR trong truy vấn SELECT MySQL?


Toán tử AND có độ ưu tiên cao hơn OR trong truy vấn SELECT MySQL.

Kiểm tra cách MySQL ưu tiên AND:

Câu truy vấn:

mysql> select 0 AND 0 OR 1 as Result;

Kết quả:

+--------+ 
| Result | 
+--------+ 
| 1      | 
+--------+ 
1 row in set (0.00 sec)

Nếu OR có độ ưu tiên cao hơn, MySQL sẽ gom nhóm như sau:

select 0 AND (0 OR 1) as Result

Giải 0 OR 1 = 1. Sau đó 0 AND 1 = 0.

Nhưng kết quả thực tế là 1, nên AND được ưu tiên trước OR để cho kết quả 1.

Câu truy vấn:

select 0 AND 0 OR 1 as Result

Giải AND trước: 0 AND 0 = 0. Sau đó 0 OR 1 = 1. Kết quả khớp.