count(*) 与 count(col_name) 的区别
在 SQL 中,COUNT(*) 和 COUNT(col_name) 都用于计算表中行的数量,但它们之间存在一些区别。
COUNT(*):
计算整个表中的行数,包括所有行,不管是否包含 NULL 值。
返回表的总行数。
例如:
SELECT COUNT(*) FROM table_name;
COUNT(col_name):
计算指定列(col_name)中非 NULL 值的行数。
不考虑 NULL 值,只统计具有非 NULL 值的行。
例如:
SELECT COUNT(col_name) FROM table_name;
总的来说,如果你想要计算表中的总行数,包括 NULL 值,你应该使用 COUNT(*)。如果你只关心某一列非 NULL 值的行数,那么使用 COUNT(col_name) 是更合适的选择。