Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在使用 MySQL,并且我已经阅读了几次COUNT(*)通常比COUNT(Column).
COUNT(*)
COUNT(Column)
但是,我需要获得COUNT不同的行。据我了解,我可以通过两种不同的方式做到这一点:
COUNT
a) SELECT COUNT(DISTINCT Column) ...
或者
b) SELECT COUNT(*) ... GROUP BY Column
一般来说,哪个更快?如果它取决于,那么它取决于什么?
SELECT COUNT(*) FROM table GROUP BY column返回按列分组的每个值的行数,而不是组数。
SELECT COUNT(*) FROM table GROUP BY column
SELECT COUNT(DISTINCT column) FROM table返回组的数量(尽管您也可以使用GROUP BY查询中的行数来获得它)。
SELECT COUNT(DISTINCT column) FROM table
GROUP BY