赞
踩
COUNT(*)
和 COUNT(1)
都可以用来统计行数,但是有以下区别:
COUNT(*)
会统计所有行,包括其中存在 NULL 值的行。COUNT(1)
统计的是第一个字段(1),因为这个值在每一行中都存在,所以实际上也是统计了所有行。但是由于不需要检查每一行的数据,因此在某些情况下,COUNT(1)
的性能可能略高于 COUNT(*)
。总之,如果你只是想要统计行数,而不用关心 NULL 值或其他列的值,那么建议使用 COUNT(1)
。
COUNT(*)
是 SQL 标准语法并且在大多数情况下都可以正常使用,包括处理包含 NULL 值的行。所以在实际使用中,如果你需要统计某个表中的所有行数,那么使用 COUNT(*)
是较为保险和稳妥的做法。但是如果你关心性能,或者只想统计非空行的数量,那么可以考虑使用其他更高效或更精确的方法。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。