Εμφανίστε τον αριθμό των παραγγελιών και "προϊόντα της αναγκαίας κατηγορίας στην παραγγελία" για το 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 για το 2025, τα 3 κορυφαία σε κάθε κατηγορία με βάση τον όγκο πωλήσεων μοντέλο with cte as( select cat_1, price, quantity, model, 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 ) για το 2025, τα 3 κορυφαία σε κάθε κατηγορία με βάση το άθροισμα πωλήσεων μοντέλο 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 γννωρίστε το όνομα της κατηγορίας, το μοντέλο και το συνολικό ποσό πωλήσεων (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
Data Engineer
1. Órdenes: - order_date datetime NO NULL - user_id int NO NULL - order_id int NO NULL 2. Bienes: - order_id int NO NULL - model int NO NULL - cat_1 varchar(50) NO NULL - price int NO NULL - quantity int NO NULL Valores en cat_1: - Ropa - Calzado - Cosméticos - Artículos para el hogar - Juguetes Mostrar la cantidad de pedidos y "cantidad de productos necesarios en la categoría en el pedido" para 2021 en las categorías "Ropa" y para 2022 en la categoría "Calzado" (forma final: 2 filas. Campos: año, cantidad de productos, cantidad de pedidos) 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 = 'Ropa' and Year(o.order_date) = 2021 or g.cat_1 = 'Calzado' and Year(o.order_date) = 2022 group by year_orders, g.cat_1 ) select year_orders, count_quan, count_orders from cte
Γιατί αποφασίσατε να βγάλετε την κατάταξη σε ένα ξεχωριστό CTE; Γιατί δεν μπορούσε να χρησιμοποιηθεί άμεσα στο πρώτο CTE;