Я получаю следующую ошибку:
Столбец «Products.ProductName» недопустим в списке выбора, поскольку он не содержится ни в статистической функции, ни в предложении GROUP BY
Select P.ProductName , C.City , Sum(OD.Quantity )as TotalSold,
DENSE_RANK() OVER ( PARTITION BY C.CITY ORDER BY OD.Quantity Desc) as rank
from Products P
Inner Join [Order Details] OD on P.ProductID = OD.ProductID
Inner Join Orders O on O.OrderID = OD.OrderID
Inner Join Customers C on C.CustomerID = O.CustomerID
where country = 'USA'
Но если использовать приведенный ниже запрос, он даст мне правильные данные. какая разница между этими двумя, если я объединяю все 4 таблицы в разном порядке?
select p.productName, c.city, od.quantity,
DENSE_RANK () OVER ( Partition by C.city Order by od.quantity Desc) as rank
from customers C
Inner Join Orders O on C.customerID = O.CustomerID
Inner Join [Order Details] od on O.OrderID = OD.OrderID
Inner Join Products P on OD.ProductID = P.ProductID
where country = 'USA'