У меня есть 3 таблицы, как:Неправильный синтаксис рядом с использованием
Salesperson
1)ID
2)Name
3)Age
4)Salary
Customer
1)ID
2)Name
3)City
4)IndustryType
Orders
1)Number
2)Order_date
3)cust_id
4)salesperson_id
5)Amount
Здесь проблема: найти наибольшее количество заказов для каждого продавца и связанного с номером заказа, вместе с клиентом, которому принадлежит этот порядок.
При реализации этого
Select salesperson_id,Numbers As ordernum,Amount
from dbo.Orders As Ord Inner Join
(
Select salesperson_id,Max(Amount) as MaxOrder
from dbo.Orders
group by salesperson_id
) as TopOrder
on TopOrder.salesperson_id = Ord.salesperson_id
where TopOrder.MaxOrder=Ord.Amount
но он показывает ошибку:
Msg 209, Level 16, State 1, Line 1
Ambiguous column name 'salesperson_id'.
Что, что 'Using' должен делать? Насколько я знаю, ключевое слово «Использовать» в TSQL отсутствует. – Jamiec
@ Jamiec sir, если я пытаюсь использовать приведенный выше код, он все еще показывает ошибку. –
Теперь это отличная и простая ошибка. У вас более 1 поля salesperson_id (один раз в таблице «Заказы», один раз в подзапросе «TopOrder»). Выбор не знает, какой из них вы хотите. (PS. Вам не нужно называть меня sir;)) – Jamiec