Bonjour,
Je développe un site hébergé avec MYSQL 4.0 (donc pas de requête imbriqué pour moi). J'ai 3 tables :
table1(id, nom, id_table3)
table1_copy(id, nom, id_table3)
table3 (id, prenom)
On peut avoir :
TABLE1:
-------
1 DUPONT 8
2 DURAND 9
TABLE1_COPY :
--------------
1 DUPOND 8
TABLE3:
-------
1 TOTO
2 TITI
Je souhaite obtenir
RESULTAT :
-----------
1 TOTO DUPOND
2 TITI DURAND
En bref, Je souhaite obtenir tous les prenom de table3
associé au nom de table1 et de table1_copy (uniquement dans le cas ou ils existent)
Je tente donc d'effectuer la requete suivante :
Et ca rame (plusieur minute pour avoir le résultat) Alors que la requete ci-dessous fonctionne très bien. et ne me renvoie UNIQUEMENT les lignes associées à table1_copy
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 SELECT table3.* FROM table1,table3 LEFT JOIN table1_copy(table1.id=table1_copy.id) WHERE ( ( table1.id_table3=table3.id AND table1_copy.id_table3 IS NULL ) OR ( table1_copy.id_table3=table_3.id AND table1_copy.id_table3 IS NOT NULL ) )
Quelqu'un connaît-il le problème ? Et surtout Quelqu'un a-t-il une solution ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SELECT table3.* FROM table1,table3 LEFT JOIN table1_copy(table1.id=table1_copy.id) WHERE ( ( table1.id_table3=table3.id AND table1_copy.id_table3 IS NULL ) )
Partager