查询1:
SELECT COUNT(1) FROM STUDENTS
查询2:
SELECT COUNT(*) FROM STUDENTS
这两个查询返回的结果相同,但它们之间是否存在性能差异?
我听说第一个查询比第二个查询快,但有人能否具体说明一下吗?
SELECT COUNT(1) FROM STUDENTS
SELECT COUNT(*) FROM STUDENTS
这两个查询返回的结果相同,但它们之间是否存在性能差异?
我听说第一个查询比第二个查询快,但有人能否具体说明一下吗?
您可以使用count(*)
或count(1)
,两者速度没有区别。正如所述,这只是一个城市传说 :)
最后说明一点,count(*)
和count(columnName)
可能不同!
第一个计算所有行,第二个计算指定列不为NULL的行数。
这两个语句完全没有任何区别。
count(1)
更快的传言是一个从未被证实的城市传说。