salut

j'ai 2 sous-requêtes imbriquées comme ça
chaque sous-requête s'exécute toute seule
mais les 2 ensembles donnent ORA-0097
si j'enlève la ligne having des 2 sous requêtes ça marche

l'explication officielle de cette erreur, comme quoi un champ dans le select n'est pas inclu dans le groupe by ne s'applique pas

il doit donc y avoir d'autres causes

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
select *
from    (
               select trunc(vts.gather_date,'MM') as month, 
                      avg(vts.size_tbs) as size_tbs 
                 from table1 vts
                where vts.oracle_sid = 'xxxxxxx'
               group by trunc(vts.gather_date,'MM')
               having trunc(vts.gather_date,'MM')=trunc(sysdate,'MM')
        ) voa,      
        (
              select trunc(vts.gather_date,'MM') as month, 
                     avg (vts.size_tbs) as size_tbs 
                from table12 vts
               where vts.oracle_sid = 'xxxxxxx'
               group by trunc(vts.gather_date,'MM')
               having trunc(vts.gather_date,'MM')=trunc(trunc(sysdate,'MM')-(3*30),'MM')
        ) vod