Bonjour à tous,
Voilà, je désirerai faire une vue, le problème c'est qu'elle n'accepte pas les unions (oracle 9i). Seulement, je rencontre des problèmes de performances.
Si je fais un count(*) de la requête avec l'union, elle s'effectue en moins de 0,01 sec,
si je ne fais pas l'union, plus de 5 sec.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 SELECT table1.* FROM table1, table2 WHERE SUBSTR(table1.code, 1, 2) = table2.subcode AND table1.codebase = table2.code UNION SELECT table1.* FROM table1 WHERE substr(table1.code,1,2) not in ( select subcode from table2);
Vous allez me dire ne fais pas de count(*), mais j'ai besoin de faire un count(*) car je veux limiter l'affichage de la liste dans mon appli
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT table1.* FROM table1, table2 WHERE (SUBSTR(table1.code, 1, 2) = table2.subcode AND table1.codebase = table2.code) or substr(table1.code,1,2) not in ( select subcode from table2);
Auriez vous des solutions à me suggérer?
Merci d'avance
Partager