Bonjour,
J'ai deux vues A(X,Y,Z) et B(X,Y,Z), ainsi qu'une 3ème vue C(X,Y,Z), construite par :
En pratique, je n'utilise la vue C que pour une valeur donnée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 CREATE OR REPLACE VIEW C(X,Y,Z) AS SELECT * FROM A MINUS SELECT * FROM B
Le problème, c'est que mes deux tables A et B sont énormes (plusieurs millions de données). Si je ne filtre que dans la vue C, je fais la soustraction de 2 tables énormes, puis je filtre le résultat obtenu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 SELECT * FROM C WHERE X = 'val'
Alors que si je pouvais filtrer la table A, puis la table B, la soustraction serait immédiate.
Y a t-il un moyen pour remonter la valeur (comme pour une variable hôte) jusqu'aux vues A et B, pour que la vue C soit optimisée ?
Merci
Partager