-
COUNT(*)
đếm tất cả các hàng trong tập hợp kết quả (hoặc nhóm nếu sử dụng GROUP BY). -
COUNT(column_name)
chỉ đếm những hàng cócolumn_name
KHÔNG ĐẦY ĐỦ. Điều này có thể chậm hơn trong một số trường hợp ngay cả khi không có giá trị NULL vì giá trị phải được kiểm tra (trừ khi cột không thể null). -
COUNT(1)
giống vớiCOUNT(*)
vì 1 không bao giờ có thể là NULL.
Để xem sự khác biệt trong kết quả, bạn có thể thử thử nghiệm nhỏ này:
CREATE TABLE table1 (x INT NULL);
INSERT INTO table1 (x) VALUES (1), (2), (NULL);
SELECT
COUNT(*) AS a,
COUNT(x) AS b,
COUNT(1) AS c
FROM table1;
Kết quả:
a b c 3 2 3