Bonjour,

J'ai une table TABLE contenant les champs :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
_id (INTEGER PK)
NAME (VARCHAR)
ACT (INTEGER) 
CHECKED (INTEGER)
Les entrées ont un NAME quelconque, un ACT entre 1 et 5, et CHECKED qui vaut 0 pour false et n'importe quel entier pour true.

Le but est d'obtenir un tableau de résultat comportant comme colonnes : ACT, compte d'entrée pour cet ACT, compte d'entrée CHECKED pour cet ACT.

En gros, le tableau devra ressembler à :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
ACT  |  TOTAL  |  CHECKED
1     |  21     |  5
2     |  24     |  20
3     |  27     |  7
4     |  10     |  8
5     |  41     |  11
J'arrive en fait à récupérer soit les colonnes ACT et TOTAL dans le même résultat, soit les colonnes ACT et CHECKED via les requêtes suivantes :

ACT et TOTAL :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
select ACT, count(*)
FROM TABLE 
WHERE ACT IN (select ACT from TABLE group by ACT)
GROUP BY ACT
ACT et CHECHED :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
select ACT, count(*)
FROM TABLE 
WHERE ACT IN (select ACT from TABLE group by ACT) 
AND CHECKED != 0
GROUP BY ACT

Comment faire pour ajouter la colonne manquante à l'un de ces deux résultats ?