26
如何在PostgreSQL中獲得某行的排序結果?PostgreSQL中的行編號
例如
SELECT 30+row_number() AS position, *
FROM users
ORDER BY salary DESC
LIMIT 30
OFFSET 30
我假定查詢將這樣的返回列表:
position | name | salary
31 | Joy | 4500
32 | Katie| 4000
33 | Frank| 3500
其實我已經到ORDER
條款複製到查詢,使之功能:
SELECT 30+row_number(ORDER BY salary DESC) AS position, *
FROM users
ORDER BY salary DESC
LIMIT 30
OFFSET 30
有任何其他方式如何返回有序和編號的結果,而不必複製代碼?
我知道這可以通過增加的應用程序本身的一些變量來解決,但我想這樣做在數據庫層,並返回到已編號的結果應用...
「隔離級別可重複讀」是所有必需的......但無論哪種方式,您都需要確保連接和事務保持打開狀態......根據應用程序的不同,這可能非常困難。 – 2016-05-02 21:30:46