关于函数COUNT('')及其变化的问题

Ale*_*dre 2 sql sql-server performance

是否有任何区别COUNT(''),并COUNT(*)COUNT(1)COUNT(ColumnName)?什么方法更快?

Gol*_*rol 6

Count(ColumnName)受列的值影响.其他变体的效果相同.

Count(*)在某些数据库(MySQL和其他数据库)中速度较慢,因为它会检索所有字段,而不需要.这经常'x'1习惯是安全的.SQL Server和Oracle更加智能,如果不需要,则不会检索字段值.

请注意,在Oracle上是''等于NULL(是的!),这可能会产生不良影响.对于SQL Server来说不是问题,但您可以使用1它是安全的.