COUNT(*) Includes Null Values?

后端 未结 2 965
别跟我提以往
别跟我提以往 2020-12-15 05:40

MSDN documentation states:

COUNT(*) returns the number of items in a group. This includes NULL values and duplicates.

How can

2条回答
  •  北海茫月
    2020-12-15 06:40

    If you have this table

    Table1:

     Field1    Field2    Field3
     ---------------------------
       1         1         1
      NULL      NULL      NULL
       2         2        NULL
       1         3         1
    

    Then

     SELECT COUNT(*), COUNT(Field1), COUNT(Field2), COUNT(DISTINCT Field3)
     FROM Table1
    

    Output Is:

     COUNT(*) = 4; -- count all rows, even null/duplicates
    
     -- count only rows without null values on that field
     COUNT(Field1) = COUNT(Field2) = 3
    
     COUNT(Field3) = 2 
     COUNT(DISTINCT Field3) = 1 -- Ignore duplicates
    

提交回复
热议问题