|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 65 ![]() |
Salut a tous,
Un petit souci sur une simple requete. J'ai 2 requetes qui vont chercher les memes infos, mais dans 2 tables différentes... l'une me sors 4 resultat, l autre 8. J aimerai faire une requete qui me sort donc 12 resultat. Pourtant, j en obtient 32 (8x4). Table 1 : Liste personnel matricule dateStageTuteur Requete 1 sors 4 resultats : Code :
matricule codeTuteur DateDebutStage Requete 2 sors 8 resultats : Code :
SELECT DISTINCT T.DATEDEBUT FROM FRIENDLY_TUTEUR T Merci a vous. Xoco |
||
|
|
00
|
|
|
#2 |
|
Membre du Club
![]() Inscription : août 2004 Messages : 36 ![]() |
tu n'as pas mis la requete qui est censée te ramener tes 12 lignes.
pas facile de te dire ce qui cloche |
|
|
00
|
|
|
#3 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 65 ![]() |
oooppss.. effectivement,
la requete qui est censé me rammener 12 results et qui m en rammene 32 c : Code :
De toutes facons, avec un group by, je ne sais avoir la date associé au matricule... |
||
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : août 2004 Messages : 36 ![]() |
il manque une jointure entre les 2 tables ...
and a.matricule = t.matricule par exemple |
|
|
00
|
|
|
#5 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 65 ![]() |
effectivement, ca marche avec la requete :
Code :
|
||
|
|
00
|
|
|
#6 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 65 ![]() |
ReSalut à tous,
Effectivement, la requete marche. Maintenant, j essaie de la combiner avec la requete originale qui verifie au passage si les personnes selectionnées travaillent toujours dans la boite, etc.... la requete : Code :
"unable to extend temp segment by 128 in tablespace TSTEMP"...., en gros, je retourne un trop grand nombre nombre de resultat, alors que je ne devrais en retourner que 12 Auriez vous une idée sur comment intégrer la requete a ses contraintes ??? |
||
|
|
00
|
|
|
#7 |
|
Membre du Club
![]() Inscription : août 2004 Messages : 36 ![]() |
Re-bonjour,
toujours le même soucis, tu as pas mal de tables dans ta clause FROM, mais aucune jointure entre elles Tu fais donc un profuit cartésien, ce qui explose du tablespace temporaire. à toi de voir quelles sont les jointures que tu dois faire entre ces tables ... |
|
|
00
|
|
|
#8 |
|
Membre éprouvé
![]() Inscription : juillet 2006 Messages : 445 ![]() |
En fait c'est pire que ça :
Les jointures sont bien présentes, mais certaines dans la clause where. On trouve aussi un "OR", qui fait que ces jointures dans la clause where ne sont pas toujours prises en compte ... Le mieux ce serait de commencer par mettre ta requête au propre. PS : "unable to extend temp segment by 128 in tablespace TSTEMP", ça ne veut pas forcément dire que tu vas ramener trop de résultats, mais ça signifie simplement que le tablespace temporaire (i.e., en gros, de calcul) est plein. |
|
|
00
|
|
|
#9 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 65 ![]() |
Merci pour vos reponses les amis !!
Effectivement, avec vos conseils, j'ai réussi le coup, la bonne requete : Code :
|
||
|
|
00
|
|
|
#10 |
|
Membre éprouvé
![]() Inscription : juillet 2006 Messages : 445 ![]() |
Je pense que ce topic répondra à ta question :
http://www.developpez.net/forums/sho...d.php?t=179600 |
|
|
00
|
|
|
#11 |
|
Candidat au titre de Membre du Club
![]() Inscription : juin 2004 Messages : 65 ![]() |
j'en conclu que c a peu pres la meme chose, saus pour les grosse requetes ou faut essayer les 2. Ca a l air de diminuer la complexité des calculs, et c plus clair dans la requete....
En tous cas, MERCI Chrifo et Iron_c, vous me retirez une épine du pied |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com