plusieurs count() sur une même table! - SQL/NoSQL - Programmation
Marsh Posté le 21-09-2008 à 13:08:07
Bonjour, J'ai une table "contents", qui contient un champs "type". Il y'a 4 types : cours, exercices, devoirs et examens. Je voudrais pouvoir compter le nombre de contenus de chaque type en une seule requête. J'ai trouvé quelques propositions ici et là, mais elles sont assez complexes. Merci d'avance! Adam
Marsh Posté le 21-09-2008 à 13:55:36
count(*), group by type:
CREATE TABLE contents ( type TEXT NOT NULL); INSERT INTO contents VALUES ("cours" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("exercices" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("devoirs" );INSERT INTO contents VALUES ("examens" );INSERT INTO contents VALUES ("examens" ); SELECT type, count(*) FROM contents GROUP BY type;
=>
cours|1 devoirs|12 examens|8 exercices|7
Testé sous SQLite3, pas de raison que ça ne fonctionne pas avec les autres DBs.
Marsh Posté le 21-09-2008 à 15:18:34
Merci Masklinn! ça fonctionne Adam
Make sure you enter the(*)required information where indicate.HTML code is not allowed
Marsh Posté le 21-09-2008 à 13:08:07
Bonjour,
J'ai une table "contents", qui contient un champs "type".
Il y'a 4 types : cours, exercices, devoirs et examens.
Je voudrais pouvoir compter le nombre de contenus de chaque type en une seule requête.
J'ai trouvé quelques propositions ici et là, mais elles sont assez complexes.
Merci d'avance!
Adam