sql – Oracle:使用’order by’子句显示行号

前端之家收集整理的这篇文章主要介绍了sql – Oracle:使用’order by’子句显示行号前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想知道如何在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

使用分析功能也可以更容易地改变如何处理关系.您可以用RANK或DENSE_RANK替换ROW_NUMBER.

原文链接:https://www.f2er.com/mssql/81940.html

猜你在找的MsSQL相关文章