INNER JOIN avec ON et plusieurs conditions de jointure
Bonjour,
J'ai actuellement une requète de ce type:
Code:
1 2
|
select count(*) from fonction(x) as fonc INNER JOIN (gros select avec plusieurs sous select et jointure) as grossetable ON fonc.id=grossetable.id AND fonc.chaine=grossetable.chaine |
Chaque table comprend environ 40 000 lignes
Cette requète dure trés longtemps (environ 5 minutes)
Si je concatene la jointure pour avoir une seule condition de jointure de cette manière:
Code:
1 2
|
select count(*) from fonction(x) as fonc INNER JOIN (gros select avec plusieurs sous select et jointure) as grossetable ON ltrim(rtrim(str(fonc.id)+fonc.chaine=ltrim(rtrim(str(grossetable.id)+grossetable.chaine |
LE résultat est immédiat
Je ne peux pas vous donné les plan de requète car je ne sais pas faire...
Mais j'aurais voulu juste savoir s'il pourrait y avoir une explication logique et si je dois faire cela sur toute mes doubles jointure pour gagner en performance ?
Par avance merci pour vos lumière
Sylo