Afișați numărul de comenzi și "produsele din categoria necesară în comandă" pentru anul 2021 în categoriile „Îmbrăcăminte” și pentru 2022 în categoria „Încălțăminte” (vizualizare finală: 2 rânduri. Câmpuri: an, număr de produse, număr de comenzi)
with cte as(
select
year(o.order_date) as year_orders,
g.cat_1,
count(distinct o.order_id) as count_orders,
sum(g.quantity) as count_quan
from Orders o
join Goods g on o.order_id = g.order_id
where (g.cat_1 = 'Îmbrăcăminte' and Year(o.order_date) = 2021) or
(g.cat_1 = 'Încălțăminte' and Year(o.order_date) = 2022)
group by year_orders, g.cat_1
)
select year_orders, count_quan, count_orders
from cte
pentru anul 2025, top 3 în fiecare categorie după cantitatea de vânzări model
with cte as(
select cat_1, price, quantity, model,
rank() over(partition by cat_1) as rk
from Orders o
join Goods g on o.order_id = g.order_id
where Year(o.order_date) = 2025
)
pentru anul 2025, top 3 în fiecare categorie după suma vânzărilor model
with cte as(
select g.cat_1, g.model, (price * quantity),
rank() over(partition by g.cat_1) as rk
from Orders o
join Goods g on o.order_id = g.order_id
where Year(o.order_date) = 2025
)
with cte as(
select g.cat_1, g.model, sum(price * quantity) as sum_,
rank() over(partition by g.cat_1 order by sum() desc) as rk
from Orders o
join Goods g on o.order_id = g.order_id
where Year(o.order_date) = 2025
)
with cte1 as(
select g.cat_1, g.model, sum(price * quantity) as sum_total,
from Orders o
join Goods g on o.order_id = g.order_id
where Year(o.order_date) = 2025
),
cte2 as(select g.cat_1, g.model, sum_total, rank() over(partition by g.cat_1 order sum_total desc) as rk
from cte1
)
select g.cat_1, g.model, sum_total
from cte2
where rk <=3
cunoașteți numele categoriei, modelul și totalul vânzărilor (top 3)
with cte1 as(
select g.cat_1 as cat_name, g.model as model,
sum(price * quantity) as sum_total,
from Orders o
join Goods g on o.order_id = g.order_id
where Year(o.order_date) = 2025
group by Year(o.order_date), g.model
),
cte2 as(select cat_name, model, sum_total,
rank() over(partition by cat_name order sum_total desc) as rk
from cte1
)
select cat_name, model, sum_total
from cte2
where rk <=3