общий объем продаж каждого продукта для каждого продавца, который имел продажи более чем на 1 продукт - PullRequest
0 голосов
/ 19 июня 2019

Я пытаюсь написать запрос для этих трех таблиц, но у меня не получилось.

Я попытался завершить с использованием операторов операторов group и group by, но у меня есть ошибки в структурах соединения

Я написал такой запрос.

SELECT a.salesman_name, p.Product_name, Sum(t.quantity) FROM SALES t
inner join SALESMAN a on t.Salesman_id =a.Salesman_id 
inner join PRODUCT p on t.Product_id = p.Product_id
GROUP BY a.salesman_name, p.Product_name
HAVING Sum(t.quantity) > 1 

, но результат запроса должен выглядеть следующим образом:

+----------------+--------------+----------+
| SALESMAN_NAME  | PRODUCT_NAME | QUANTITY |
+----------------+--------------+----------+
| Ahmet Celik    | PRODUCT_A    |       25 |
| Ahmet Celik    | PRODUCT_D    |        5 |
| Ahmet Celik    | PRODUCT_E    |       10 |
| Coskun Metin   | PRODUCT_A    |       15 |
| Coskun Metin   | PRODUCT_B    |       10 |
| Ferhat Kaya    | PRODUCT_A    |        5 |
| Ferhat Kaya    | PRODUCT_C    |       12 |
| Ferhat Kaya    | PRODUCT_E    |        8 |
| Selim Albayrak | PRODUCT_C    |        5 |
| Selim Albayrak | PRODUCT_D    |        2 |
+----------------+--------------+----------+

Я подготовил базу данных в sqlfiddle http://www.sqlfiddle.com/#!18/ba5ee/6

заранее большое спасибо за вашу помощь

1 Ответ

0 голосов
/ 19 июня 2019

В вашей скрипке уже есть столбец количества.Исходя из этого, решение:

SELECT sm.salesman_name, p.product_name, min(quantity) as quantity
FROM Sales s
left outer JOIN Product p on p.product_id = s.product_id
left outer JOIN Salesman sm on sm.salesman_id = s.salesman_id
where quantity >= 1
Group By salesman_name, product_name

См .: http://www.sqlfiddle.com/#!18/ba5ee/20

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...