Sobes.tech

Data Engineer

Prikažite broj narudžbi i "proizvoda potrebne kategorije u narudžbi" za 2021. godinu u kategorijama "Odeća" i za 2022. godinu u kategoriji "Obuća" (konačni prikaz: 2 reda. Polja: godina, broj proizvoda, broj narudžbi) 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 = 'Odeća' and Year(o.order_date) = 2021) or (g.cat_1 = 'Obuća' and Year(o.order_date) = 2022) group by year_orders, g.cat_1 ) select year_orders, count_quan, count_orders from cte za 2025. godinu, top 3 u svakoj kategoriji po količini prodaje 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 ) za 2025. godinu, top 3 u svakoj kategoriji po zbiru prodaje 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 poznajte naziv kategorije, model i ukupnu prodaju (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

169

1. Наредбе: - order_date datetime НЕ NULL - user_id int НЕ NULL - order_id int НЕ NULL 2. Производи: - order_id int НЕ NULL - model int НЕ NULL - cat_1 varchar(50) НЕ NULL - price int НЕ NULL - quantity int НЕ NULL Вредности у cat_1: - Одећа - Обућа - Козметика - Производи за домаћинство - Играчке Прикажи број наредби и "број потребних производа у категорији у наредби" за 2021. у категоријама "Одећа" и за 2022. у категорији "Обућа" (крајњи изглед: 2 реда. Поља: година, број производа, број наредби) 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 = 'Одећа' and Year(o.order_date) = 2021 or g.cat_1 = 'Обућа' and Year(o.order_date) = 2022 group by year_orders, g.cat_1 ) select year_orders, count_quan, count_orders from cte

160