Я пытаюсь запросить 3 таблицы базы данных Заказы, клиент и продавец. Для того, чтобы найти больше информации о недавних выступлениях продавца. Требуемые категории - это идентификатор, возраст, количество заказов, где amout> 1000, был заказ, где сумма> 500 (y / n), количество обслуживаемых уникальных клиентов, дни с последнего заказа и, наконец, сумма последнего заказа.
Мой код похож на следующий, его также можно посмотреть по ссылке:
SELECT o.salesperson_id
s.Age,
(CASE WHEN o.Amount > 500 THEN 'Yes' ELSE 'No' END) AS 'Had Order Bigger Than 500?',
(datediff(day,o.order_date,GETDATE())) AS 'Days Since Last Order',
o.Amount as 'Last Order Amount'
FROM Orders o INNER JOIN Salesperson s ON o.salesperson_id = s.ID
WHERE o.Amount IN
(SELECT o.Amount WHERE o.order_date = MAX (o.order_date) FROM Orders)
GROUP BY o.salesperson_id
HAVING (COUNT (DISTINCT o.cust_id)) AS 'Number of Unique Customers Served',
(SUM(CASE WHEN o.Amount > 1000 THEN 1 ELSE 0 END)) AS 'Number of Orders Bigger Than 1000'
ORDER BY o.salesperson_id;
http://sqlfiddle.com/#!18/4fc5c/69
Автоматический отладчик сообщает, что проблема связана с моим ОТ, но яя тупой основатель
Неверный синтаксис рядом с ключевым словом 'FROM'
Мой ожидаемый результат будет примерно таким:
+----------------+-----------------+-----------------------------------+-----------------------------------+-----------------------------------+-----------------------+-------------------+
| Salesperson ID | Salesperson Age | Number of Orders Bigger Than 1000 | Had Order Bigger Than 500? (y/n) | Number of Unique Customers Served | Days Since Last Order | Last Order Amount |
+----------------+-----------------+-----------------------------------+-----------------------------------+-----------------------------------+-----------------------+-------------------+
| 1 | 61 | 0 | N | 1 | | 460 |
| 2 | 34 | 1 | Y | 2 | | 2400 |
| 8 | 57 | 1 | y | 1 | | 1800 |
+----------------+-----------------+-----------------------------------+-----------------------------------+-----------------------------------+-----------------------+-------------------+
Было бы крайнеценить всю полученную помощь.