Bonjour, en tombant sur un forum d'entraide, je suis tombé sur le problème de
cette internaute qui a exactement le même problème que moi, et qui l'a déjà
très bien expliqué, donc je le retranscris tel quel...
Comme vous pourrez le voir, quelqu'un a répondu...mais doué comme je suis je
n'ai pas du tout compris la réponse...quelqu'un pourrait il me faciliter la
tâche?...N'hésitez pas à expliquer comme à un neuneu de l'informatique, car
c'est plutot le cas!!!
Merci beaucoup
"Voici mon blème :
j'ai 1 table demandeur, une table conjoint et une table XX et une table
origine géographique, et bien d'autres mais elles ne nous intéressent pas...
J'ai 1 champ Origine géographique les tables demandeur et conjoint.
Je cherche à faire une requête analyse croisée qui me cumule les origines
géographique du demandeur et du conjoint.
Ex :
Résultat de Analyse_croisee_origine_geographique_demandeur :
-----------x--------y-------z
dép1 ----1 ----------------3
dép2 --------------6 ------1
Je voudrai une requête ayant pour résultat le cumul de ces 2 requêtes :
-----------x--------y-------z
dép1 -----2------- 1-------3
dép2 -------------10------ 1
dép4 -----4-----------------
Au fait, la requête union : table [analyse_croisee_origine_geographique]
union all table [analyse_croisee_origine_geographique_conjoint] ne cumule pas
les lignes dép mais me donne un résultat du genre
-----------x--------y-------z
dép1 ----1 ----------------3
dép2 --------------6 ------1
dép1 ----1--------1--------
dép2 --------------4 --------
dép4 ----4 -----------------
Qi qq'un peut me filer un coup de main, ce serait cool !
Merci @+ "
Réponse de etienne_athens postée le 01/04/2003 à 16:29
"Bonjour,
ayant eu l'occasion de devoir proceder au meme bidouillage a de nombreuses
reprises, voici une facon de proceder qui permet de contourner le
probleme....c'est un moyen mais il en existe certainement d'autres...
Tu procedes a un append query dans la meme table de tes deux premieres
requetes. Il faut d'abord creer la table temporaire, puis ecrire les deux
query qui cree des record en completant la table, en les executant l'un apres
l'autre....Il est bien entendu necessaire que les noms de rubrique soit les
memes...
Puis tu refais un query de la table generee temporaire une fois
remplie....dans ce cas le sum fonctionnera correctement
Deuxieme solution :
Tu utilises ta requete en Union pour faire un make table query (SELECT
INSERT INTO) et tu refais un query de la table temporaire generee....
Cependant il devrait aussi etre possible d'arriver directement en enchainant
deux query (la source de donnees du deuxieme query est le premier query...qui
est ton query en UNION) d'arriver au meme resultat sans passer par une table
temporaire ecrite dans la base....A la fin du deuxueme query dans ce cas la
table te,mporaire est purement et simplement detruite....
J'ai bien explique ou c'est incomprehensible ??? "
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Sylvain Lafontaine
Utilisez une requête Group By sur le résultat de l'Union, avec des Sum() pour additionner les différentes colonnes. Il est possible que vous ayez à intégrer la fonction Nz() dans votre requête afin d'éviter que la somme d'un nombre avec une valeur nulle donne une somme nulle.
S. L.
"CyrilDébutAccess" wrote in message news:
Bonjour, en tombant sur un forum d'entraide, je suis tombé sur le problème de cette internaute qui a exactement le même problème que moi, et qui l'a déjà très bien expliqué, donc je le retranscris tel quel...
Comme vous pourrez le voir, quelqu'un a répondu...mais doué comme je suis je n'ai pas du tout compris la réponse...quelqu'un pourrait il me faciliter la tâche?...N'hésitez pas à expliquer comme à un neuneu de l'informatique, car c'est plutot le cas!!! Merci beaucoup
"Voici mon blème : j'ai 1 table demandeur, une table conjoint et une table XX et une table origine géographique, et bien d'autres mais elles ne nous intéressent pas... J'ai 1 champ Origine géographique les tables demandeur et conjoint. Je cherche à faire une requête analyse croisée qui me cumule les origines géographique du demandeur et du conjoint. Ex : Résultat de Analyse_croisee_origine_geographique_demandeur : -----------x--------y-------z dép1 ----1 ----------------3 dép2 --------------6 ------1
Je voudrai une requête ayant pour résultat le cumul de ces 2 requêtes : -----------x--------y-------z dép1 -----2------- 1-------3 dép2 -------------10------ 1 dép4 -----4----------------- Au fait, la requête union : table [analyse_croisee_origine_geographique] union all table [analyse_croisee_origine_geographique_conjoint] ne cumule pas les lignes dép mais me donne un résultat du genre -----------x--------y-------z dép1 ----1 ----------------3 dép2 --------------6 ------1 dép1 ----1--------1-------- dép2 --------------4 -------- dép4 ----4 ----------------- Qi qq'un peut me filer un coup de main, ce serait cool ! Merci @+ "
Réponse de etienne_athens postée le 01/04/2003 à 16:29
"Bonjour,
ayant eu l'occasion de devoir proceder au meme bidouillage a de nombreuses reprises, voici une facon de proceder qui permet de contourner le probleme....c'est un moyen mais il en existe certainement d'autres...
Tu procedes a un append query dans la meme table de tes deux premieres requetes. Il faut d'abord creer la table temporaire, puis ecrire les deux query qui cree des record en completant la table, en les executant l'un apres l'autre....Il est bien entendu necessaire que les noms de rubrique soit les memes...
Puis tu refais un query de la table generee temporaire une fois remplie....dans ce cas le sum fonctionnera correctement
Deuxieme solution :
Tu utilises ta requete en Union pour faire un make table query (SELECT INSERT INTO) et tu refais un query de la table temporaire generee....
Cependant il devrait aussi etre possible d'arriver directement en enchainant deux query (la source de donnees du deuxieme query est le premier query...qui est ton query en UNION) d'arriver au meme resultat sans passer par une table temporaire ecrite dans la base....A la fin du deuxueme query dans ce cas la table te,mporaire est purement et simplement detruite....
J'ai bien explique ou c'est incomprehensible ??? "
Utilisez une requête Group By sur le résultat de l'Union, avec des Sum()
pour additionner les différentes colonnes. Il est possible que vous ayez à
intégrer la fonction Nz() dans votre requête afin d'éviter que la somme d'un
nombre avec une valeur nulle donne une somme nulle.
S. L.
"CyrilDébutAccess" <CyrilDbutAccess@discussions.microsoft.com> wrote in
message news:6CAECD46-D486-461A-BA11-C78D29228D59@microsoft.com...
Bonjour, en tombant sur un forum d'entraide, je suis tombé sur le problème
de
cette internaute qui a exactement le même problème que moi, et qui l'a
déjà
très bien expliqué, donc je le retranscris tel quel...
Comme vous pourrez le voir, quelqu'un a répondu...mais doué comme je suis
je
n'ai pas du tout compris la réponse...quelqu'un pourrait il me faciliter
la
tâche?...N'hésitez pas à expliquer comme à un neuneu de l'informatique,
car
c'est plutot le cas!!!
Merci beaucoup
"Voici mon blème :
j'ai 1 table demandeur, une table conjoint et une table XX et une table
origine géographique, et bien d'autres mais elles ne nous intéressent
pas...
J'ai 1 champ Origine géographique les tables demandeur et conjoint.
Je cherche à faire une requête analyse croisée qui me cumule les origines
géographique du demandeur et du conjoint.
Ex :
Résultat de Analyse_croisee_origine_geographique_demandeur :
-----------x--------y-------z
dép1 ----1 ----------------3
dép2 --------------6 ------1
Je voudrai une requête ayant pour résultat le cumul de ces 2 requêtes :
-----------x--------y-------z
dép1 -----2------- 1-------3
dép2 -------------10------ 1
dép4 -----4-----------------
Au fait, la requête union : table [analyse_croisee_origine_geographique]
union all table [analyse_croisee_origine_geographique_conjoint] ne cumule
pas
les lignes dép mais me donne un résultat du genre
-----------x--------y-------z
dép1 ----1 ----------------3
dép2 --------------6 ------1
dép1 ----1--------1--------
dép2 --------------4 --------
dép4 ----4 -----------------
Qi qq'un peut me filer un coup de main, ce serait cool !
Merci @+ "
Réponse de etienne_athens postée le 01/04/2003 à 16:29
"Bonjour,
ayant eu l'occasion de devoir proceder au meme bidouillage a de nombreuses
reprises, voici une facon de proceder qui permet de contourner le
probleme....c'est un moyen mais il en existe certainement d'autres...
Tu procedes a un append query dans la meme table de tes deux premieres
requetes. Il faut d'abord creer la table temporaire, puis ecrire les deux
query qui cree des record en completant la table, en les executant l'un
apres
l'autre....Il est bien entendu necessaire que les noms de rubrique soit
les
memes...
Puis tu refais un query de la table generee temporaire une fois
remplie....dans ce cas le sum fonctionnera correctement
Deuxieme solution :
Tu utilises ta requete en Union pour faire un make table query (SELECT
INSERT INTO) et tu refais un query de la table temporaire generee....
Cependant il devrait aussi etre possible d'arriver directement en
enchainant
deux query (la source de donnees du deuxieme query est le premier
query...qui
est ton query en UNION) d'arriver au meme resultat sans passer par une
table
temporaire ecrite dans la base....A la fin du deuxueme query dans ce cas
la
table te,mporaire est purement et simplement detruite....
J'ai bien explique ou c'est incomprehensible ??? "
Utilisez une requête Group By sur le résultat de l'Union, avec des Sum() pour additionner les différentes colonnes. Il est possible que vous ayez à intégrer la fonction Nz() dans votre requête afin d'éviter que la somme d'un nombre avec une valeur nulle donne une somme nulle.
S. L.
"CyrilDébutAccess" wrote in message news:
Bonjour, en tombant sur un forum d'entraide, je suis tombé sur le problème de cette internaute qui a exactement le même problème que moi, et qui l'a déjà très bien expliqué, donc je le retranscris tel quel...
Comme vous pourrez le voir, quelqu'un a répondu...mais doué comme je suis je n'ai pas du tout compris la réponse...quelqu'un pourrait il me faciliter la tâche?...N'hésitez pas à expliquer comme à un neuneu de l'informatique, car c'est plutot le cas!!! Merci beaucoup
"Voici mon blème : j'ai 1 table demandeur, une table conjoint et une table XX et une table origine géographique, et bien d'autres mais elles ne nous intéressent pas... J'ai 1 champ Origine géographique les tables demandeur et conjoint. Je cherche à faire une requête analyse croisée qui me cumule les origines géographique du demandeur et du conjoint. Ex : Résultat de Analyse_croisee_origine_geographique_demandeur : -----------x--------y-------z dép1 ----1 ----------------3 dép2 --------------6 ------1
Je voudrai une requête ayant pour résultat le cumul de ces 2 requêtes : -----------x--------y-------z dép1 -----2------- 1-------3 dép2 -------------10------ 1 dép4 -----4----------------- Au fait, la requête union : table [analyse_croisee_origine_geographique] union all table [analyse_croisee_origine_geographique_conjoint] ne cumule pas les lignes dép mais me donne un résultat du genre -----------x--------y-------z dép1 ----1 ----------------3 dép2 --------------6 ------1 dép1 ----1--------1-------- dép2 --------------4 -------- dép4 ----4 ----------------- Qi qq'un peut me filer un coup de main, ce serait cool ! Merci @+ "
Réponse de etienne_athens postée le 01/04/2003 à 16:29
"Bonjour,
ayant eu l'occasion de devoir proceder au meme bidouillage a de nombreuses reprises, voici une facon de proceder qui permet de contourner le probleme....c'est un moyen mais il en existe certainement d'autres...
Tu procedes a un append query dans la meme table de tes deux premieres requetes. Il faut d'abord creer la table temporaire, puis ecrire les deux query qui cree des record en completant la table, en les executant l'un apres l'autre....Il est bien entendu necessaire que les noms de rubrique soit les memes...
Puis tu refais un query de la table generee temporaire une fois remplie....dans ce cas le sum fonctionnera correctement
Deuxieme solution :
Tu utilises ta requete en Union pour faire un make table query (SELECT INSERT INTO) et tu refais un query de la table temporaire generee....
Cependant il devrait aussi etre possible d'arriver directement en enchainant deux query (la source de donnees du deuxieme query est le premier query...qui est ton query en UNION) d'arriver au meme resultat sans passer par une table temporaire ecrite dans la base....A la fin du deuxueme query dans ce cas la table te,mporaire est purement et simplement detruite....
J'ai bien explique ou c'est incomprehensible ??? "