Bonjour la communauté;

Voilà j'ai une question : si ces deux expressions sont équivalentes ? La première affiche la moyenne des ventes par catégorie et par année et la deuxième fait l'union de deux agrégations :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
SELECT p.category, t.year AVG(purchase_price) average_sales
FROM product p, time t, purchases f
Where p.prod_id = f.prod_id
And t.time_key = f.time_key
GROUP BY p.category, t.year ;

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
SELECT p.category, t.year AVG(purchase_price) average_sales
FROM product p, time t, purchases f
Where p.prod_id = f.prod_id
And t.time_key = f.time_key
GROUP BY p.category
union
SELECT p.category, t.year AVG(purchase_price) average_sales
FROM product p, time t, purchases f
Where p.prod_id = f.prod_id
And t.time_key = f.time_key
GROUP BY t.year