Bonjour,
J'ai une table de chansons, je voudrais trier pour chaque chanteurs les types de chansons (Rock, Blues,..) ainsi que si cette chanson etait en single ou bien avec un groupe, voila la structure de ma table:
Je voudrais avoir un resultat comme suite:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 CREATE TABLE IF NOT EXISTS `chansons` ( `id` int(5) NOT NULL auto_increment, `idc` int(2) NOT NULL, `type_chanson` varchar(100) collate latin1_general_ci NOT NULL, `sin_gr` varchar(100) collate latin1_general_ci NOT NULL, PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci AUTO_INCREMENT=11 ; -- -- Contenu de la table `chansons` -- INSERT INTO `chansons` (`id`, `idc`, `type_chanson`, `sin_gr`) VALUES (1, 1, 'Blues', 'Single'), (2, 1, 'Blues', 'Groupe'), (3, 1, 'Blues', 'Single'), (4, 1, 'Blues', 'Single'), (5, 1, 'Blues', 'Single'), (6, 1, 'Blues', 'Groupe'), (7, 1, 'Rock', 'Single'), (8, 1, 'Rock', 'Groupe'), (9, 1, 'Rock', 'Groupe'), (10, 1, 'Rock', 'Groupe');
En utilisant cette requete:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 1- Blues Single 2- Blues Groupe 3- Rock Single 4- Rock Groupe
ou bien:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3SELECT * FROM `chansons` WHERE idc =1 GROUP BY type_chanson
ca neglige les autres resultats.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3SELECT * FROM `chansons` WHERE idc =1 GROUP BY sin_gr
Merci
Partager