这是我尝试使用的select语句,我试图提取以“未知”开头的所有记录的计数,但我收到的语法错误不正确在计数的右括号附近。我怎样才能以这种方式使用计数?
SELECT DISTINCT [ID], COUNT(ID), COUNT([NAME] LIKE 'Unknown%')
FROM table.foo
GROUP BY [ID]
答案 0 :(得分:4)
SELECT DISTINCT
您不需要GROUP BY
。只需使用CASE
作为SUM()
的参数:
SELECT ID, COUNT(ID),
SUM(CASE WHEN NAME LIKE 'Unknown%' THEN 1 ELSE 0 END)
FROM table.foo
GROUP BY ID;