Parametern till COUNT-funktionen är ett uttryck som ska utvärderas för varje rad. Funktionen COUNT returnerar antalet rader för vilka uttrycket utvärderas till ett icke-nullvärde. ( * är ett speciellt uttryck som inte utvärderas, det returnerar helt enkelt antalet rader.)
Det finns ytterligare två modifierare för uttrycket:ALL och DISTINCT. Dessa avgör om dubbletter kasseras. Eftersom ALL är standard, är ditt exempel detsamma som count(ALL 1), vilket innebär att dubbletter behålls.
Eftersom uttrycket "1" utvärderas till icke-null för varje rad, och eftersom du inte tar bort dubbletter, bör COUNT(1) alltid returnera samma nummer som COUNT(*).