【发布时间】:2012-10-22 15:37:25
【问题描述】:
我想更新表中列的前 10 个值。我有三列; id、account 和 accountrank。要获得前 10 个值,我可以使用以下方法:
SELECT * FROM accountrecords
ORDER BY account DESC
LIMIT 10;
我想做的是根据account 的大小将accountrank 中的值设置为一系列1 - 10。这可以在 PostgreSQL 中实现吗?
【问题讨论】:
-
如果您的 poatgres 版本是 8.4 或更高版本,您可以使用窗口函数 + rank() 或 row_number()。
标签: sql postgresql sql-update sql-order-by sql-limit