count(1)与count(*)区别
时间: 2023-09-05 18:11:34 浏览: 89
count(1)、count(*)与count(列名)的执行区别详解
`count(1)` 和 `count(*)` 在 SQL 中都可用来计算表中的行数。但是它们有一些细微的差别:
- `count(1)` 是统计非 NULL 值的行数。
- `count(*)` 是统计所有行的行数, 包括 NULL 值。
在大多数情况下,`count(1)` 和 `count(*)` 的结果是一样的。但是如果表中有很多 NULL 值,那么两个函数的结果就会不同。 建议使用 count(1) 更加贴近需求且效率较高,而 count(*) 更加保险.
阅读全文