我想知道查詢優化的Count(*)和Count(1)之間有什麼區別。在研究它時,我遇到了Ask Tom這是oracle
,並表示兩者在執行時間方面相同。什麼時候使用Sql Server 2008中的Count(*)和Count(1)
- 是否也適用於
SQL Server 2008
? - 如果是,那麼爲什麼有兩個diff功能相同?
- 如果沒有哪個用於更好的優化?
- 是否有我們應該在哪裏使用COUNT(*)在計數(1)和副-A-詩句
我想知道查詢優化的Count(*)和Count(1)之間有什麼區別。在研究它時,我遇到了Ask Tom這是oracle
,並表示兩者在執行時間方面相同。什麼時候使用Sql Server 2008中的Count(*)和Count(1)
SQL Server 2008
?COUNT (*)
任何情況下是一樣的COUNT(1)
。實際情況是,「*」
實際上是默認選項,不需要指定。Count(*)
包含所有非NULL值。如果在COUNT函數中使用列名稱或任何常量。它會給你非空值
它應該是相同的。按照COUNT "COUNT ({ [ [ ALL | DISTINCT ] expression ] | * })"
的定義,所以1被視爲非空表達式。