Помогите пожалуйста с задачами SQL 100 баллов
1. Кaкую кaтeгорию товаров чащe меньшe всeго заказывает заказчик Eastеrn Connеction?
2.Кaкую кaтeгорию товаров меньше вcего продаёт cотрудник по фaмилии Lеvеrling?
3. Oпредeлить наимeнованиe кoмпаний-пoставщиков, гдe имя кoнтактного лицa начинаeтся с «S». Сколько строк в выборкe?
База данных northwind, ниже прикрепляю структуру базы данных
Answers & Comments
SQL запросы:
1.1) Заказывает реже всего
SELECT c.category_name
FROM categories c
JOIN products p ON c.category_id = p.category_id
JOIN order_details od ON p.product_id = od.product_id
JOIN orders o ON od.order_id = o.order_id
JOIN customers cust ON o.customer_id = cust.customer_id
WHERE cust.company_name = 'Eastern Connection'
GROUP BY c.category_name
ORDER BY COUNT(*) ASC
LIMIT 1;
1.2) Заказывает чаще всего:
SELECT c.category_name
FROM categories c
JOIN products p ON c.category_id = p.category_id
JOIN order_details od ON p.product_id = od.product_id
JOIN orders o ON od.order_id = o.order_id
JOIN customers cust ON o.customer_id = cust.customer_id
WHERE cust.company_name = 'Eastern Connection'
GROUP BY c.category_name
ORDER BY COUNT(*) DESC
LIMIT 1;
2) Сотрудник Leverling продает меньше всего:
SELECT c.category_name
FROM categories c
JOIN products p ON c.category_id = p.category_id
JOIN order_details od ON p.product_id = od.product_id
JOIN orders o ON od.order_id = o.order_id
JOIN employees emp ON o.employee_id = emp.employee_id
WHERE emp.last_name = 'Leverling'
GROUP BY c.category_name
ORDER BY COUNT(*) ASC
LIMIT 1;
3.1) Контактное лицо начинается с буквы "S":
SELECT company_name
FROM suppliers
WHERE contact_name LIKE 'S%'
3.2) Для подсчета количества строк в выборке:
SELECT COUNT(*) AS row_count
FROM suppliers
WHERE contact_name LIKE 'S%'