我想知道如何为正在使用订单的 sql 语句打印行号。
目前我试过 ROWNUM
但据我所知,它仅适用于未排序的结果集。
SELECT rownum, a.lg_id, a.full_name, a.sort_order
FROM activity_type_lang a
where a.lg_id = 'en'
order by a.full_name;
TIA
最佳答案
除了嵌套查询,您还可以使用分析函数
SELECT row_number() OVER (ORDER BY a.full_name),
lg_id,
full_name,
sort_order
FROM activity_type_lang a
WHERE a.lg_id = 'en'
ORDER BY a.full_name
如果您想更改关系的处理方式,使用分析函数也更容易。您可以更换
ROW_NUMBER
与 RANK 或 DENSE_RANK
.
关于sql - Oracle:使用 'order by' 子句显示行号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1377825/