Bạn đang xem chức năng MySQL IF()
. Về cơ bản nó là một nhà điều hành ternary trên biểu thức boolean cung cấp trong lập luận 1. (Nghe có vẻ từ câu hỏi của bạn rằng bạn hiểu với liên hiệp đó đang làm.)
- Nếu expr1 là TRUE (expr1 <> 0 và expr1 <> NULL) thì hàm IF() trả về expr2;
- Nếu expr1 là FALSE, nó trả về expr3.
IF()
trả về giá trị số hoặc chuỗi, tùy thuộc vào ngữ cảnh được sử dụng.
mysql> SELECT IF(1>2,2,3);
-> 3
mysql> SELECT IF(1<2,'yes','no');
-> 'yes'
mysql> SELECT IF(STRCMP('test','test1'),'no','yes');
-> 'no'
Đó là một cách không thể đọc được thực sự sôi nổi của không sử dụng a.entity_id IS NULL
.
Nguồn
2011-08-26 20:14:20
'a.entity_id IS NULL hoặc a.entity_id = 0' –