Bonjour à tous,
je voudrais effectuer plusieurs count() dans une seule requete. Quand je fais les 2 requêtes indépendentes cela fonctionne :
la requête me retourne le tableau suivant ce qui est conhérent avec mes données:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT COUNT(*) AS NBconsentNA LABEL "Nombre de consentements manquants" FROM AOlib.Demog WHERE dconst IS MISSING
Nombre de consentements manquants 0
retourne 19 ce qui est bon aussi :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT COUNT(*) AS NBvalidConsent LABEL "NB valides" FROM AOlib.Demog WHERE (dvisit >= dconst) AND dconst IS NOT MISSING
NB valides 19
Par contre si je veux faire une seule requête avec le code suivant :
dans ce cas la requête me retourne un tableau contenant 19 lignes :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT (SELECT COUNT(*) FROM AOlib.Demog WHERE dconst IS MISSING) AS NBconsentNA LABEL "NB invalides", (SELECT COUNT(*) FROM AOlib.Demog WHERE dvisit >= dconst AND dconst IS NOT MISSING) AS NBvalidConsent LABEL "NB valides" FROM AOlib.Demog
NB invalides NB valides 0 19 0 19 0 19 ... ...
Je ne comprends pas pourquoi j'ai 19 lignes alors que je voudrais simplement avoir :
NB invalides NB valides 0 19
Merci beaucoup pour votre aide !!![]()
Partager