Bonjour, j'ai plusieurs soucis pour compter, trier et ranger...
J'ai donc deux tables
je voudrais arriver à :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 table1 table2 id1 code1 categorie id2 code2 groupe 1 001 a 1 001 1 2 002 b 2 002 1 3 003 c 3 003 1 4 004 d 4 004 2 5 005 e 5 005 2 6 006 b 6 006 2 7 007 a 7 007 3 8 008 a 8 008 3 9 009 c 9 009 3
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 groupe categorie nombre 1 a 1 2 a 0 3 a 2
ce qui lie mes tables c'est le code
alors pour cette requete, je veux :
compter le nombre de 'categorie' dans chaque 'groupe'
grouper par 'groupe'
trier par l'id2'
et surtout afficher les zéro, des 'groupe'
n'ayant meme pas de 'categorie'
je veux savoir combien il y a de
categorie dans le groupe et s'il n'y en a pas afficher "0"
voici ce que j'ai fais pour l'instant
si vous pouviez me donner un coup de mainSELECT table2.groupe,
COUNT(table1.categorie) AS nombre
FROM table2, table1
WHERE table1.code=table2.code2 AND categorie = 'a'
GROUP BY table2.groupe
ORDER BY table2.id2 ASC
et s'il manque quelque chose, demandé moi
les CREATE TABLE
CREATE TABLE IF NOT EXISTS `table1` (
`id1` int(11) NOT NULL auto_increment,
`nom` text NOT NULL,
`prenom` text NOT NULL,
`categorie` text NOT NULL,
`code1` text NOT NULL,
PRIMARY KEY (`id1`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;et les INSERT INTOCREATE TABLE IF NOT EXISTS `table2` (
`id2` int(11) NOT NULL auto_increment,
`groupe` text NOT NULL,
`code2` text NOT NULL,
PRIMARY KEY (`id2`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=9 ;
INSERT INTO `table1` (`id1`,`nom`, `prenom`, `categorie`, `code1`) VALUES
(1, 'durant', 'andre', 'a', '001',),
(2, 'dupont', 'Jean', 'b', '002'),
(3, 'martin', 'Elodie', 'c', '003'),
(4, 'blanc', 'Dominique', 'd', '004'),
(5, 'rouge', 'Monique', 'e', '005'),
(6, 'vert', 'Francois', 'b', '006'),
(7, 'bleu', 'Fabien', 'a', '007'),
(8, 'noir', 'Jean', 'a', '008'),
(9, 'blanc', 'Marie', 'c', '009'),INSERT INTO `table2` (`id2`, `groupe`, `code2`) VALUES
(1, '1', '001'),
(2, '1', '002'),
(3, '1', '003'),
(4, '2', '004'),
(5, '2', '005'),
(6, '2', '006'),
(7, '3', '007'),
(8, '3', '008'),
(9, '3', '009'),
Partager