Created
April 21, 2025 10:48
-
-
Save Makc082/45efbd6df3168090543c8c454396e9d2 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --1. Вивести кількість товарів кожної категорії, середня ціна поставки яких більше 100 гривень. | |
| SELECT p.quantity AS [кількість товарів], | |
| c.name AS [категорії товарів ] | |
| FROM Product p | |
| JOIN Category c ON p.id_category = c.id | |
| JOIN Delivery d ON d.id_product = p.id | |
| GROUP BY c.name, p.quantity | |
| HAVING AVG(d.price) > 100 | |
| --2. Показати категорії "Фрукти" та "Цукерки", їхні товари та загальну суму їх продажу. | |
| SELECT c.name AS [категорії товарів], | |
| p.name AS [назва товару], | |
| p.price * s.quantity AS [загальна сума продажу] | |
| FROM Product p | |
| JOIN Category c ON p.id_category = c.id | |
| JOIN Sale s ON s.id_product = p.id | |
| GROUP BY c.name, p.name, p.price * s.quantity | |
| HAVING c.name IN ('Фрукти', 'Овочі') | |
| --3. Показати інформацію про виробника, його повну адресу та кількість товарів, які він випускає. | |
| --Загальна вартість продажу товарів кожного виробника при цьому повинна бути від 500 до 2000 гривень. | |
| SELECT pr.name AS [виробник], | |
| a.street + ', ' + | |
| c.name + ', ' + | |
| r.name + ', ' + | |
| cn.name AS [адреса виробника], | |
| p.quantity AS [кількість товарів], | |
| SUM(s.price * s.quantity) AS [загальна сума продажу] | |
| FROM Product p | |
| JOIN Producer pr ON p.id_producer = pr.id | |
| JOIN Address a ON pr.id_address = a.id | |
| JOIN City c ON a.id_city = c.id | |
| JOIN Region r ON c.id_region = r.id | |
| JOIN Country cn ON r.id_country = cn.id | |
| JOIN Sale s ON s.id_product = p.id | |
| GROUP BY pr.name, a.street, c.name, r.name, cn.name, p.quantity | |
| HAVING SUM(s.price * s.quantity) BETWEEN 500 AND 2000 | |
| --4. Показати категорію товарів, яких в магазині найменше. | |
| SELECT TOP 1 | |
| c.name AS [категорія], | |
| SUM(p.quantity) AS [кількість товарів] | |
| FROM Product p | |
| JOIN Category c ON p.id_category = c.id | |
| GROUP BY c.name | |
| ORDER BY SUM(p.quantity) ASC; | |
| --5. Показати кількість товарів кожної категорії, при цьому враховуючи тільки ті товари, ціна поставки яких перевищує 400 гривень. | |
| --Умова: виведена інформація стосується тільки трьох визначених постачальників. | |
| SELECT p.quantity AS [кількість товарів], | |
| c.name AS [категорія] | |
| FROM Product p | |
| JOIN Category c ON p.id_category = c.id | |
| JOIN Delivery d ON d.id_product = p.id | |
| JOIN Supplier s ON d.id_supplier = s.id | |
| GROUP BY p.quantity, s.name, d.price, c.name | |
| HAVING d.price > 400 AND s.name IN ('Швидко', 'Біжубіжу', 'Картофка') |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment