Requete jointure externe
Fermé
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
-
7 juil. 2003 à 13:50
blux Messages postés 25978 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 19 avril 2024 - 7 juil. 2003 à 15:38
blux Messages postés 25978 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 19 avril 2024 - 7 juil. 2003 à 15:38
A voir également:
- Requete jointure externe
- Chkdsk disque dur externe - Guide
- Disque dur externe - Guide
- Lecteur cd externe voiture norauto - Forum Autoradio
- Delete avec jointure ✓ - Forum Bases de données
- Brancher lecteur dvd externe sur tv en usb - Forum Lecteurs et supports vidéo
10 réponses
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
3 287
7 juil. 2003 à 14:05
7 juil. 2003 à 14:05
Bonjour,
C'est quoi comme base ? (pour savoir quel SQL)
Si tu fais "p.cle_message is not null" au lieu de " p.cle_message = 212", ça donne quoi ?
A+ Blux
C'est quoi comme base ? (pour savoir quel SQL)
Si tu fais "p.cle_message is not null" au lieu de " p.cle_message = 212", ça donne quoi ?
A+ Blux
"Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
Pitu
Messages postés
1440
Date d'inscription
jeudi 3 octobre 2002
Statut
Contributeur
Dernière intervention
5 janvier 2013
125
7 juil. 2003 à 14:09
7 juil. 2003 à 14:09
Bonjour Letssya.
Dans ta clause where, tu as mis "and p.cle_message = 212"
Il est donc normal que cette requête ne te sorte que les vols pour lesquels la cle_message est 212.
En fait, si j'ai bien compris, tu voudrais en résultat la liste des vols postérieurs à une certaine date, avec à côté le message éventuel s'y rapportant.
Tu n'as pas besoin pour ça de rajouter la clause sur cle_message à mon avis.
Si je me trompe sur la bonne compréhension de ton pb, n'hésites pas à en remettre une couche.
a+
(:•Þ Pitu (Apprenti Ipl)
Dans ta clause where, tu as mis "and p.cle_message = 212"
Il est donc normal que cette requête ne te sorte que les vols pour lesquels la cle_message est 212.
En fait, si j'ai bien compris, tu voudrais en résultat la liste des vols postérieurs à une certaine date, avec à côté le message éventuel s'y rapportant.
Tu n'as pas besoin pour ça de rajouter la clause sur cle_message à mon avis.
Si je me trompe sur la bonne compréhension de ton pb, n'hésites pas à en remettre une couche.
a+
(:•Þ Pitu (Apprenti Ipl)
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
7 juil. 2003 à 14:19
7 juil. 2003 à 14:19
oui je suis d'accord avec toi, j'ai essayé d'enlever la condition p.cle_message = 212
pour la description du problème tu as tout compris... sauf que je veux un message bien précis (ex : 212) et pas un autre...
Letissya
pour la description du problème tu as tout compris... sauf que je veux un message bien précis (ex : 212) et pas un autre...
Letissya
Pitu
Messages postés
1440
Date d'inscription
jeudi 3 octobre 2002
Statut
Contributeur
Dernière intervention
5 janvier 2013
125
>
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
7 juil. 2003 à 14:24
7 juil. 2003 à 14:24
:o( Ouuuuiiiiiiiiiinnnnnn ... Je comprends plus rien ...
Tu veux la liste des vols en faisant une jointure sur tes 2 tables, mais tu ne veux QUE ceux qui ont le message 212, c'est ça ?
(Je ne parle pas de date, puisque tu as résolu ce pb).
Ben ... c'est pas ce que tu as obtenu avec ta requête ?
Non, bien évidemment, puisque tu pose la question. Mais là, je ne comprends pas ...
(:•Þ Pitu (Apprenti Ipl)
Tu veux la liste des vols en faisant une jointure sur tes 2 tables, mais tu ne veux QUE ceux qui ont le message 212, c'est ça ?
(Je ne parle pas de date, puisque tu as résolu ce pb).
Ben ... c'est pas ce que tu as obtenu avec ta requête ?
Non, bien évidemment, puisque tu pose la question. Mais là, je ne comprends pas ...
(:•Þ Pitu (Apprenti Ipl)
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
7 juil. 2003 à 14:13
7 juil. 2003 à 14:13
ORACLE7
ben ça me donne un truc comme ça :
1 512
1 847
1 582
2 987
2 986
2 957
2 212
...
Letissya
ben ça me donne un truc comme ça :
1 512
1 847
1 582
2 987
2 986
2 957
2 212
...
Letissya
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
3 287
7 juil. 2003 à 14:23
7 juil. 2003 à 14:23
Ca veut donc dire qu'il y plusieurs messages possibles pour chaque vol, il faut bien mettre le numéro de message pour avoir le message particulier.
Je crains cependant de ne pas avoir tout compris l'énoncé du problème... peux-tu en rajouter (ou le reposer en d'autres termes) ?
A+ Blux
Je crains cependant de ne pas avoir tout compris l'énoncé du problème... peux-tu en rajouter (ou le reposer en d'autres termes) ?
A+ Blux
"Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
7 juil. 2003 à 14:35
7 juil. 2003 à 14:35
oui il peut y avoir plusieurs messages sur un vol...
dans la table message je peux avoir ça :
MESSAGE :
cle_message cle_vol
212 1
578 1
587 2
212 6
587 3
986 3
512 6
212 4
878 5
965 5
125 3
et moi ce que je voudrais obtenir en fait c'est
cle_vol cle_message
1 212
2
3
4 212
5
6 212
en fait je veux avoir tous les vols à partir d'une certaine date... et que pour chaque vol je puisse savoir si un message particulier est apparu ou non..
je ne veux pas juste les vols où ce message est apparu... je veux aussi les vols où le message n'est pas apparu même s'il y a eu des messages différents ou pas de messages du tout...
c'est plus clair ?
Letissya
dans la table message je peux avoir ça :
MESSAGE :
cle_message cle_vol
212 1
578 1
587 2
212 6
587 3
986 3
512 6
212 4
878 5
965 5
125 3
et moi ce que je voudrais obtenir en fait c'est
cle_vol cle_message
1 212
2
3
4 212
5
6 212
en fait je veux avoir tous les vols à partir d'une certaine date... et que pour chaque vol je puisse savoir si un message particulier est apparu ou non..
je ne veux pas juste les vols où ce message est apparu... je veux aussi les vols où le message n'est pas apparu même s'il y a eu des messages différents ou pas de messages du tout...
c'est plus clair ?
Letissya
Fu Xuen
Messages postés
3639
Date d'inscription
jeudi 24 avril 2003
Statut
Contributeur
Dernière intervention
11 septembre 2005
305
7 juil. 2003 à 14:36
7 juil. 2003 à 14:36
Je crois effectivement que la contradiction est dans l'énoncé du problème :).
-= Fu Xuen =-
-= Fu Xuen =-
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
3 287
7 juil. 2003 à 14:44
7 juil. 2003 à 14:44
v.cle_vol=m.cle_vol(+) serait à mettre dans la jointure et non dans le where, c'est-à-dire
SELECT ...
ON v.cle_vol=m.cle_vol(+)
WHERE
Ca irait pas mieux ?
A+ Blux
SELECT ...
ON v.cle_vol=m.cle_vol(+)
WHERE
Ca irait pas mieux ?
A+ Blux
"Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
Pitu
Messages postés
1440
Date d'inscription
jeudi 3 octobre 2002
Statut
Contributeur
Dernière intervention
5 janvier 2013
125
7 juil. 2003 à 14:48
7 juil. 2003 à 14:48
C'est du sql Oracle, ça ?
(:•Þ Pitu (Apprenti Ipl)
(:•Þ Pitu (Apprenti Ipl)
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
7 juil. 2003 à 14:48
7 juil. 2003 à 14:48
ben non car le (+) c'est la jointure...
sinon il faut que j'utilise OUTER JOIN et pas le (+)... mais ma version d'ORACLE ne supporte pas la syntaxe avec JOIN..
donc, je ne pense pas que ça vienne de là.. je crois plutot que je doit faire deux requetes ... pour arriver à mes fins...
Letissya
sinon il faut que j'utilise OUTER JOIN et pas le (+)... mais ma version d'ORACLE ne supporte pas la syntaxe avec JOIN..
donc, je ne pense pas que ça vienne de là.. je crois plutot que je doit faire deux requetes ... pour arriver à mes fins...
Letissya
Pitu
Messages postés
1440
Date d'inscription
jeudi 3 octobre 2002
Statut
Contributeur
Dernière intervention
5 janvier 2013
125
7 juil. 2003 à 14:52
7 juil. 2003 à 14:52
Là, c'est sûr que tu arriveras à ce que tu cherches.
C'est pas top, mais ...
Parfois, le Mieux est l'ennemi du Bien
(:•Þ Pitu (Apprenti Ipl)
C'est pas top, mais ...
Parfois, le Mieux est l'ennemi du Bien
(:•Þ Pitu (Apprenti Ipl)
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
3 287
7 juil. 2003 à 14:55
7 juil. 2003 à 14:55
as-tu essayé ce que j'ai donné ?
A+ Blux
A+ Blux
"Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
>
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
7 juil. 2003 à 14:57
7 juil. 2003 à 14:57
c'est à dire ??
la condition après le ON ... ça ne fonctionne pas parce que c'est une commande qui n'est pas compatible avec ORACLE... (mais j'ai quand meme essayée si c'est ce que tu veux savoir ..)
Letissya
la condition après le ON ... ça ne fonctionne pas parce que c'est une commande qui n'est pas compatible avec ORACLE... (mais j'ai quand meme essayée si c'est ce que tu veux savoir ..)
Letissya
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
3 287
>
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
7 juil. 2003 à 15:06
7 juil. 2003 à 15:06
C'est curieux, car en ORACLE 9, ça marche bien (et ça doit pas être nouveau) :
SELECT ...
FROM ...
ON ...
WHERE ...;
A+ Blux
SELECT ...
FROM ...
ON ...
WHERE ...;
A+ Blux
"Les cons, ça ose tout.
C'est même à ça qu'on les reconnait"
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
>
blux
Messages postés
25978
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
19 avril 2024
7 juil. 2003 à 15:13
7 juil. 2003 à 15:13
ben moi j'ai une erreur, je ne peux pas executer le requete.. :o(
Letissya
Letissya
Pitu
Messages postés
1440
Date d'inscription
jeudi 3 octobre 2002
Statut
Contributeur
Dernière intervention
5 janvier 2013
125
7 juil. 2003 à 14:51
7 juil. 2003 à 14:51
Hmm, Hmm ...
alors, plutôt que d'effectuer une jointure, tu devrais peut-être essayer avec des select imbriqués ...
Non ?
(:•Þ Pitu (Apprenti Ipl)
alors, plutôt que d'effectuer une jointure, tu devrais peut-être essayer avec des select imbriqués ...
Non ?
(:•Þ Pitu (Apprenti Ipl)
letissya
Messages postés
89
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
8 novembre 2005
5
7 juil. 2003 à 14:54
7 juil. 2003 à 14:54
ben j'ai quand meme des contraintes de temps d'execution.. alors les requetes imbriquées j'essais d'éviter... enfin je vais voir...
Letissya
Letissya