Sobes.tech
Junior

გაყიდვების ანალიზი კატეგორიების მიხედვით საცალო მაღაზიაში თქვენ მუშაობთ ანალიტიკოსად საცალო მაღაზიაში. თქვენი დავალებაა შეადგინოთ გაყიდვების ანგარიში კატეგორიების მიხედვით: • კატეგორიაში გაყიდული ერთეულების საერთო რაოდენობა (total_units_sold); • კატეგორიაში საერთო შემოსავალი, განთავსებული ფასდაკლებებით, სადაც ფასდაკლება გამოიყენება როგორც unit_price × units_sold × (1 − discount/100). თუ ფასდაკლება არ არის (NULL), მიიჩნიეთ რომ ის 0%-ია. ორნიშნა დამდგმელი; • საშუალო გაყიდული ერთეულების რაოდენობა ერთ გაყიდვაზე (avg_units_per_sale), ორნიშნა დამდგმელი; • ფასდაკლებით არ გაყიდული გაყიდვების წილი (no_discount_share) — NULL ან 0%-იანი ფასდაკლებით გაყიდვების რაოდენობა, გაყოფილი საერთო გაყიდვების რაოდენობაზე კატეგორიაში, სამნიშნა დამდგმელი: შედეგი პირველ რიგში დაალაგეთ შემცირებად total_revenue-ის მიხედვით, შემდეგ ზრდადობით საშუალო ერთეულების რაოდენობის (avg_units_per_sale), ბოლოს — კატეგორიის სახელის მიხედვით ალფავიტურად: შესავალი ფორმატი გაყიდვების ცხრილი: • sale_id (int) — უნიკალური გაყიდვის იდენტიფიკატორი • product_id (int) — პროდუქტის იდენტიფიკატორი • category (text) — პროდუქტის კატეგორია • sale_date (timestamp) — გაყიდვის თარიღი და დრო • units_sold (int) — გაყიდული ერთეულების რაოდენობა • unit_price (numeric) — ერთეულის ფასი • discount (numeric) — პროდუქტის ფასდაკლება პროცენტებში, შეიძლება იყოს NULL ფართო მონაცემი შეიძლება შეიცავდეს გამოტოვებულ მნიშვნელობებს: გამოსვლის ფორმატი საკითხი უნდა დააბრუნოს ცხრილი შემდეგი ველებით: • category (text) — პროდუქტის კატეგორია • total_units_sold (int) — საერთო გაყიდული ერთეულების რაოდენობა • total_revenue (numeric) — საერთო შემოსავალი კატეგორიის მიხედვით, განთავსებული ფასდაკლებებით, ორნიშნა დამდგმელი; • avg_units_per_sale (numeric) — საშუალო ერთეულების რაოდენობა ერთ შეკვეთაში, ორნიშნა დამდგმელი; • no_discount_share (numeric) — ფასდაკლებით არ გაყიდული გაყიდვების წილი, სამნიშნა დამდგმელი შედეგი პირველ რიგში დაალაგეთ შემცირებად total_revenue-ის მიხედვით, შემდეგ ზრდადობით საშუალო ერთეულების რაოდენობის (avg_units_per_sale), ბოლოს — კატეგორიის სახელის მიხედვით ალფავიტურად.

sobes.tech AI

პასუხი AI-სგან

sql შერჩევა კატეგორია, SUM(გაყიდული ერთეულები) როგორც საერთო_გაყიდული_ერთეულები, ROUND(SUM(ერთეულის_ფასი * გაყიდული_ერთეულები * (1 - COALESCE_ფასდაკლება, 0) / 100.0)), 2) როგორც საერთო_შემოსავალი, ROUND(AVG(გაყიდული_ერთეულები), 2) როგორც საშუალო_ერთეულები_გაყიდული, ROUND( SUM(CASE WHEN ფასდაკლება NULL ან ფასდაკლება = 0 მაშინ 1 სხვა 0 დასასრული) ::numeric / COUNT(*), 3 ) როგორც ფასდაკლებით_გაუქმებული_წილი გაყიდვებიდან გაერთიანება_კატეგორიით სორტირება საერთო_შემოსავალი DESC, საშუალო_ერთეულები_გაყიდული ASC, კატეგორია ASC;