我試圖用這個查詢通過他們的評價我如何獲得SQL中特定行的排名?
SELECT vendorid, rating, RANK() over(ORDER BY rating DESC)ranking
FROM vendors
讓每個vendr的行列,但我希望得到一個特定供應商的排名,所以我把where子句是這樣的:
SELECT vendorid, rating, RANK() over(ORDER BY rating DESC)ranking
FROM vendors
WHERE vendorid=1
但它在排名中返回值1,即使它不是排名1. 我該如何解決這個問題?
使您的排名查詢成爲子查詢,並在客戶新的主要查詢過濾器中進行篩選,否則您將對篩選結果進行排名。 – SMM