the*_*cat 0 sql sqlite group-by count
SELECT COUNT(*) FROM table GROUP BY column
Run Code Online (Sandbox Code Playgroud)
我得到表中的总行数,而不是GROUP BY后的行数.为什么?
因为那是group by有效的.它为源数据中每个标识的行返回一行.在这种情况下,它将为每个组提供计数.
得到你想要的:
select count(distinct column)
from table;
Run Code Online (Sandbox Code Playgroud)
编辑:
稍微注意一下,如果column可以NULL,那么真正的等价物是:
select (count(distinct column) +
max(case when column is null then 1 else 0 end)
)
from table;
Run Code Online (Sandbox Code Playgroud)