2017-05-01 1 views
0

J'utilise SSMS et essaye d'écrire une requête qui va calculer le pourcentage de cas fermés dans un certain laps de temps. Par exemple, il y a une colonne étiquetée "FERMÉE", et dans chaque rangée de cette colonne est une date si le cas est réellement fermé; et s'il n'est pas fermé, il indiquera NULL dans la ligne, ce qui signifie que le cas est toujours ouvert. J'essaie de diviser le nombre de cas fermés par le nombre total de cas afin d'obtenir un pourcentage de cas fermés.Comment diviser en SQL pour obtenir le pourcentage?

Je pensais à la division où FERMÉ n'est pas NULL/Nombre total de cas

je n'étais pas sûr de savoir comment j'aller à ce sujet.

Merci!

Répondre

0

Utilisez l'agrégation conditionnelle pour diviser les lignes non nulles par le nombre total de lignes de la table.

select sum(case when closed is not null then 1.0 end)/count(*) as closed_cases 
from yourtable 
+0

Merci, cela a fonctionné pour moi! Je n'ai jamais utilisé CASE auparavant, mais maintenant je comprends. – bingaloman