我有3個明顯的表,銷售人員,訂單和客戶。在訂單表中,我有一個所有訂單和SalesPersonID的列表。查找銷售員的第二高銷售SQL
我想查找每個有超過2個訂單的銷售人員,並找到第二個最高訂單的訂單值。如果我被要求查找MAX訂單值,我可以完成這個查詢,但我似乎無法找到一個簡單的方法來做第二高的值。
新手在這裏,所以請放輕鬆。提前致謝。
我已經絞盡腦汁地閱讀了過去3小時的ROW_Number和Rank,但無法弄清楚。和IM肯定有比寫自己的自定義功能
Select distinct
Orders.SalesID, MAX(Orders.OrderAmount), SalesPerson.SalesName
From
Orders, SalesPerson
Where
Orders.SalesID = SalesPerson.SalesID
Group by
Orders.SalesID, SalesPerson.SalesName
Order by
MAX(Orders.OrderAmount) DESC
[不良習慣踢:使用舊樣式的JOIN(http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old -style-joins.aspx) - 在ANSI - ** 92 ** SQL標準中,舊式*逗號分隔的表*樣式列表已替換爲* proper * ANSI'JOIN'語法(**超過20年前**),其使用不受歡迎 –