Bonjour à tous,

Depuis plusieurs jours je galère suite à un temps d'exécution d'une requête vraiment très long. J'espère que je trouverai de l'aide parmis les tenor du SQL qui se trouvent sur ce forum.

Mon problème est donc le suivant :


La table TOTO est partitionnée sur le champ ID_TEC.
La table LIST_ID contient la valeur du champ ID_TEC de la table TOTO.


Lorsque j'exécute la requete :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
select TOTO.* from TOTO where ID_TEC=1; --(valeur en dur sur la clé de partition).
Le temps de response est instantané.


Lorsque j'exécute la requete :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
select TOTO.* from TOTO where ID_TEC in (select ID_TEC from LIST_ID where table_name ='TOTO'); --(valeur de la clé de partition récupérée depuis la table LIST_ID).
Le temps de réponse de la requête et de plusieurs seconde.
Les stats sont à jour sur la partition de la table TOTO et sur la table LIST_ID.

Avez-vous déjà rencontrer ce problème ? Avez-vous une solution pour améliorer le temps de réponse de la requête ?

Je vous remercie de votre lecture.