Salut,
J'utilise la librairie DBLink de IBM (Ilog).
J'ai deux requêtes SQL de type select dont je parcours le résultat via un curseur, le tout sur une base Oracle 9.
Les deux requêtes fournissent exactement le même résultat (même nombre de colonnes, même nombre de lignes et mêmes valeurs) mais par des tables et jointures différentes.
Je suis surpris car le temps de parcours de l'ensemble des lignes du résultat via les deux curseurs est très différent. Avec la requête la plus simple, le temps de parcours est inférieur à la seconde. Avec l'autre requête plus complexe, le temps de parcours s'approche des 10 secondes.
Je n'ai jamais pensé que la complexité d'une requête pouvait avoir un impact sur le parcours des lignes qu'elle renvoit via un curseur. En fait j'ai toujours cru que la requête produisait un tableau de valeurs et que le curseur parcourait ce tableau de valeurs. or il semble que ce ne soit pas aussi simple.
Quelqu'un peut-il me le confirmer ?
---------------
"Comme des pommes d'or sur des ciselures d'argent, Ainsi est une parole dite à propos" (Proverbes de Salomon)