Zlub
Messages postés809Date d'inscriptionmercredi 11 octobre 2000StatutMembreDernière intervention29 septembre 2010
-
19 juil. 2005 à 23:49
Zlub
Messages postés809Date d'inscriptionmercredi 11 octobre 2000StatutMembreDernière intervention29 septembre 2010
-
20 juil. 2005 à 10:34
Salut,
Voici le topo : J'ai deux tables une contenant disons, des personnes et une autre contenant des cours
voici la structure pour l'exemple :
[ Personnes ]
<li>idPer (clé)
</li><li>nom
</li><li>etc
</li>
[ Cours ]
<li>lib
</li><li>date
</li><li>idPer
</li>
exemple de remplissage
[ Personnes ]
1 Dupont ...
2 Durand ...
3 David ...
[ Cours ]
math 01/01/2005 1
math 01/01/2005 3
math 02/01/2005 2
math 03/01/2005 1
angl 02/01/2005 1
angl 03/01/2005 2
Geo 04/01/2005 1
Geo 04/01/2005 2
Geo 04/01/2005 3
je voudrais en une seule requête sql afficher toutes les libs des cours en colone puis le nom de la personne.
Et pour chaque personne, dans la colone associée au cours, marquer le nb de participation cad
Math angl Geo Nom
2 1 1 Dupont
1 1 1 Durand
1 0 1 David
-------------------->
Y
J'ai une solution par le code avec deux requêtes :
<li> une pour lister les different cours + ajouter le libeller « Nom »
</li><li> une pour compter le nb de presence de la personne X au cours Y et afficher le nom de la personne (Y)
</li>
mais j'ai besoin d'utiliser une seule requete SQL...
Sous acess mais j'ai une solution, mais j'ai besoin de le faire tourner depuis VB avec ADO...
or il n'aime pas vraiement ma requête...
voici ma requete sous acess
TRANSFORM count(cours.lib) as nb
SELECT personnes.nom
FROM cours INNER JOIN personnes ON cours.idPer = personnes.idPer
GROUP BY personnes.nom
PIVOT cours.lib
quelqu'un a une idée ?
Nb: ce n'est pas la structure de ma base,
c'est juste histoire que ma demande soit plus facile à comprendre....
++
Zlub
A voir également:
Avec une seule requête il est possible d'interroger plusieurs tables à la fois