Fusion de plusieur requête

tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   -  
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour,

j'ai 8requetes que je voudrai réunir en un état

chacune des requête a la structure en commun et je voudrai créer un tableau de la forme

structure | NBrqt1 | NBrqt2 | ... | NBrqt8

comment ça marche?

Merci.


8 réponses

blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Salut,

peut-être une requête UNION avec un TCD ?
Mais sans garantie, SQL n'étant pas fait pour travailler en colonnes...
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
non justement sa fonctionne pas

mais apres si j'ai le resultat en ligne, c'est pas grave
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Alors un SELECT REQ1 UNION REQ2 UNION REQ3 UNION REQ4... devrait suffire.
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
merci je regarde sa et je te tient au couranr
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
sa fonctionne pas car en fait j'ai un autre soucis,

je voudrai afficher toute mes structure mais mes differente requete ne les mettent pas et apres il dis qu'il y a conflit car j'ai plus de structure que de resultat
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Les requêtes mises en UNION doivent avoir le même nombre de colonnes...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
oui mais meme dans mes requête individuelle, quand je met "LEFT" ou Right union il veut pas tout m'afficher, d'habitude sa foctionne toujours mais la franchement je bloque.

En gros; si j'arrive sa, j'ai finit mon stage, c'est la derniere chose qu'il me reste a faire
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
UNION ne doit pas avoir de LEFT ou RIGHT.
C'est fait pour mettre les résultats de n requêtes les uns au dessous des autres...
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
je parler pour les JOIN pardon.
apres j'ai essayer union ou union all mais rien ne marche
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Commence déjà par dire ce que tu as et ce que tu veux...
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
a vrai dire j'ai compris le problème.
Je vais formuler une autre question qui permettra de répondre a mon problème initial.

j'ai cette requête:

SELECT orientation.nom_orientation, Count(usager.NOM) AS CompteDeNOM
FROM orientation left JOIN usager ON orientation.nom_orientation = usager.Orientation_prevue
where usager.Age=16
GROUP BY orientation.code_orientation, orientation.nom_orientation
ORDER BY orientation.code_orientation;


Voici le problème: je veux qu'il m'affiche toute les orientations de la table "orientation" m^me lorsqu'il y en a zéro.
Je sais que sa ne marche pas car j'ai mis ma clause where. mais sa na marche pas quand je met mon filtre d'age dans le ON non plus.

Alors comment afficher toute les orientations de la table orientation en comptant pour chaque orientation, le nombre d'usager ayant 16ans?

Merci.
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Ca ne peut pas marcher car ton GROUP BY fait référence à code_orientation qui n'est pas dans le SELECT...
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
même en le supprimant de ma requete, le probléme reste le meme
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Simplifie ta requête au max jusqu'à ce qu'elle fonctionne, ensuite rajoute élément par élément pour voir à quel moment ça coince (LEFT ou RIGHT JOIN, par exemple...)
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
mon left join fonctionne quand la clause where n'est pas mise, dés que je met mon where age=16, le left join ne fonctionne plus
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
je fait sa:
SELECT orientation.nom_orientation, Count(usager.age) AS CompteDeNOM
FROM orientation LEFT JOIN usager on orientation.nom_orientation = usager.Orientation_prevue and usager.age=16
GROUP BY orientation.nom_orientation

Mais la, Access me dis "expression JOIN non supportée"
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
C'est normal, tu mets un AND dans ton JOIN.
Simplifie la requête et rajoute des trucs au fur et à mesure.

Essaye ça pour commencer :
SELECT orientation.nom_orientation, Count(usager.age) AS CompteDeNOM
FROM orientation LEFT JOIN usager on orientation.nom_orientation = usager.Orientation_prevue
GROUP BY orientation.nom_orientation
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
sa marche, il m'affiche toute mes orientations et le nombre d'usage les aillant (avec 0 quand personne ne l'as).
maintenant, il faudrai compter l'orientation des usager aillant 16ans
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
Il suffit de rajouter un where...
0
tatitato Messages postés 116 Date d'inscription   Statut Membre Dernière intervention   8
 
mais la je n'ai que les champs de orientation ou il y a des usager de 16ans. Moi je veux toute les orientation, même si il n'y a pas de jeunes de 16ans dedans
0
blux Messages postés 27137 Date d'inscription   Statut Modérateur Dernière intervention   3 362
 
maintenant, il faudrai compter l'orientation des usager aillant 16ans
et ensuite :
Moi je veux toute les orientation, même si il n'y a pas de jeunes de 16ans dedans
Je ne peux rien pour toi...
0