这个SQL语句生成什么?
我很难找到有关此特定声明的文档这个SQL语句生成什么?,sql,Sql,我很难找到有关此特定声明的文档 SELECT IF (count(f.id)=0,1,0) as flgNew FROM table f ON ... WHERE ... 该表与其他表联接,如果在f中找到条目,则应返回1;如果未找到条目,则应返回0 那么如果(count(f.id)=0,1,0)做什么呢?基本上与下面的CASE语句相同: SELECT CASE WHEN count(f.id) = 0 THEN 1 ELSE 0 E
SELECT IF (count(f.id)=0,1,0) as flgNew
FROM table f ON ...
WHERE ...
该表与其他表联接,如果在f
中找到条目,则应返回1;如果未找到条目,则应返回0
那么如果(count(f.id)=0,1,0)做什么呢?基本上与下面的
CASE
语句相同:
SELECT CASE WHEN count(f.id) = 0
THEN 1
ELSE 0
END AS flgNew
...
它检查表达式count(f.id)=0
是否为真,如果为真,则返回值1
,如果为假,则返回值0
您可以在这里的官方文档中阅读有关IF()
函数的更多信息:
无论计数显示为1,都可能是要翻译的IF语句。同样可以通过案例来实现。好吧,这是合理的!