Sqlserver
 sql >> Base de données >  >> RDS >> Sqlserver

Sql Server équivalent d'une fonction d'agrégation COUNTIF

Vous pouvez utiliser un SUM (pas COUNT !) combiné avec un CASE déclaration, comme celle-ci :

SELECT SUM(CASE WHEN myColumn=1 THEN 1 ELSE 0 END)
FROM AD_CurrentView

Remarque :dans mon propre test NULL s n'étaient pas un problème, bien que cela puisse dépendre de l'environnement. Vous pouvez gérer les valeurs nulles telles que :

SELECT SUM(CASE WHEN ISNULL(myColumn,0)=1 THEN 1 ELSE 0 END)
FROM AD_CurrentView