count(1)、count(*)、和count(字段)
时间: 2024-05-25 08:09:49 浏览: 129
MySQL中count(*)、count(1)和count(col)的区别汇总
这三个函数都可以用于对数据表中的记录进行计数,但有一些区别。
- count(1):统计表中所有记录的数量,不管字段是否为NULL。一般来说,用 count(1) 会比 count(*) 更快,因为 count(*) 需要查询所有字段,而 count(1) 只需要查询一次。
- count(*):统计表中所有记录的数量,不管字段是否为NULL,和 count(1) 的效果相同。
- count(字段):统计指定字段不为NULL的记录数量。如果指定的字段有NULL值,该记录不会被计数。
需要注意的是,count函数不会忽略重复值,即使有重复记录,也会被计数。如果想要消除重复值后进行计数,可以使用 count(distinct 字段) 函数。
阅读全文