Lenteurs requetes SQL avec jointure externe

Fermé
floxi Messages postés 145 Date d'inscription mercredi 8 février 2006 Statut Membre Dernière intervention 15 avril 2016 - 15 avril 2013 à 19:29
 bigbybob - 17 avril 2013 à 21:27
Bonjour,

j'observe des lenteurs lors de résolution de jointure externe environ 150s alors qu'avec des jointures internes uniquement 0.1s.

je possède deux table de 7000 enregistrement sur MySQL 5.1.66-0+squeeze1.


requete rapide:
select * from tincidents, tthreads
where 
tincidents.id=tthreads.ticket and (
tthreads.text LIKE '%patchouli%' OR
tincidents.description LIKE '%patchouli%')


requete lente:
select * from tincidents
left outer join tthreads ON tincidents.id=tthreads.ticket
where 
tthreads.text LIKE '%patchouli%' OR
tincidents.description LIKE '%patchouli%'


Avez vous une idée de la source de cette lenteurs ?


Merci




1 réponse

Salut,

C'est normal, ta première requête utilise une jointure simple => juste les données communes
Ton autre requête est plus complexe et ramène plus ou moins tous les résultats, donc c'est forcement plus long. Au final il est possible que le résultat soit identique si toute tes clés correspondent, mais la recherche sera forcement plus longue.

Pour plus d'infos sur les requêtes en MySql, je t'invite a matter ça :

http://www.epershand.net/developpement/mysql-bdd/comprendre-jointures-inner-left-right-join-mysql
0