我无法找到有关此特定声明的文档
SELECT IF (count(f.id)=0,1,0) as flgNew
FROM table f ON ...
WHERE ...
该表与其他表连接,如果找到f
中的条目则返回1,如果找不到则返回0。
那么IF(count(f.id)= 0,1,0)是做什么的呢?
答案 0 :(得分:2)
它与以下CASE
声明基本相同:
SELECT CASE WHEN count(f.id) = 0
THEN 1
ELSE 0
END AS flgNew
...
检查表达式count(f.id) = 0
是否为真,如果是,则返回值1
,如果不是则返回0
。
您可以在此处的官方文档中详细了解IF()
功能:
https://dev.mysql.com/doc/refman/5.7/en/control-flow-functions.html#function_if