Bonjour à tous,
J'aurais aimé savoir si le fait de placer ces critères de recherche dans le JOIN optimise une requête...
En fait je me suis toujours imaginé (peut-être à tort...) que si je mettais les clauses dans le JOIN, les sous-ensembles généré était plus petit et donc sur une jointure le temps d'exécution serait plus rapide...
Donc pour résumer est-ce qu'il y a une réelle optimisation si j'écris ça :
plutôt que ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SELECT * FROM TABLE_A INNER JOIN TABLE_B ON (TABLE_A.IdA = TABLE_B.IdA AND TABLE_A.nom = 'AAA' AND TABLE_A.Date > '20090313') INNER JOIN TABLE_C ON (TABLE_C.IdB = TABLE_B.IdB)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 SELECT * FROM TABLE_A INNER JOIN TABLE_B ON (TABLE_A.IdA = TABLE_B.IdA) INNER JOIN TABLE_C ON (TABLE_C.IdB = TABLE_B.IdB) WHERE TABLE_A.nom = 'AAA' AND TABLE_A.Date > '20090313'
Merci de vos avis éclairés
Partager