Mutassa meg a megrendelések számát és a "szükséges kategóriába tartozó termékek" számát a megrendelésben 2021-re a "Ruházat" kategóriában és 2022-re a "Cipő" kategóriában (végső nézet: 2 sor. Mezők: év, termékek száma, megrendelések száma)
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 = 'Ruházat' and Year(o.order_date) = 2021) or
(g.cat_1 = 'Cipő' and Year(o.order_date) = 2022)
group by year_orders, g.cat_1
)
select year_orders, count_quan, count_orders
from cte
az 2025-ös évre, a legjobb 3 minden kategóriában a értékesítési mennyiség modell szerint
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
)
az 2025-ös évre, a legjobb 3 minden kategóriában a értékesítési összeg modell szerint
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
ismerje meg a kategória nevét, a modellt és az összes eladást (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