Oracle按照某一字段值排序并显示,相同的显示序号

Oracle按照某一字段值排序并显示,相同的显示序号

最近的工作遇到对于相同的字段,按照序号去显示值,并对相同的值进行排序

实验了半天,感觉满意的答案,分享给大家

第一种: ROW_NUMBER

语法: ROW_NUMBER() OVER (ORDER BY your_column) AS sequence_number

说明 : 根据your_column字段的值进行排序,并为每个唯一的your_column值分配一个序号。

示例:

sql 复制代码
SELECT  ROW_NUMBER() OVER (ORDER BY sub.C_IDEN_RELA) AS sequence_number,sub.* FROM Testtable sub WHERE 1=1 AND sub.C_IDEN_RELA IN ('5132242092203614208','5132412321219125248','5132392474594680832') ;

效果图:

优化改进(日常喜欢用的)

语法: ROW_NUMBER() OVER (PARTITION BY sub.C_IDEN_RELA ORDER BY sub.C_IDEN_RELA) AS sequence_number

说明 : 根据your_column字段的值进行排序,并为每个唯一的your_column值分配一个序号。

示例:

sql 复制代码
SELECT  ROW_NUMBER() OVER (PARTITION BY sub.C_IDEN_RELA ORDER BY sub.C_IDEN_RELA) AS sequence_number,sub.* FROM Testtable sub WHERE 1=1 AND sub.C_IDEN_RELA IN ('5132242092203614208','5132412321219125248','5132392474594680832') ;

效果图:

第二种: DENSE_RANK

语法: DENSE_RANK() OVER (ORDER BY your_column) AS sequence_number

说明 : 对有相同your_column值的行进行分组,并且为每组分配一个序号
示例:

sql 复制代码
SELECT  DENSE_RANK() OVER (ORDER BY sub.C_IDEN_RELA) AS sequence_number,sub.* FROM Testtable sub WHERE 1=1 AND sub.C_IDEN_RELA IN ('5132242092203614208','5132412321219125248','5132392474594680832') ;

效果图:

第三种: ROW_NUMBER

语法: RANK() OVER (ORDER BY your_column) AS sequence_number

说明 : 根据your_column字段的值进行排序,并为每个唯一的your_column值分配一个序号。
示例:

sql 复制代码
SELECT  RANK() OVER (ORDER BY sub.C_IDEN_RELA) AS sequence_number,sub.* FROM Testtable sub WHERE 1=1 AND sub.C_IDEN_RELA IN ('5132242092203614208','5132412321219125248','5132392474594680832') ;

效果图:

完结撒花

相关推荐
STLearner16 分钟前
VLDB 2025 | 时间序列(Time Series)论文总结(预测,异常检测,压缩,自动化等)
数据库·人工智能·深度学习·神经网络·机器学习·数据挖掘·时序数据库
23 分钟前
TIDB——TIKV——raft
数据库·分布式·tidb
不会c嘎嘎41 分钟前
MySQL 指南:全面掌握用户管理与权限控制
数据库·mysql
ShadowSmartMicros42 分钟前
java调用milvus数据库
java·数据库·milvus
Bug.ink43 分钟前
BUUCTF——WEB(2)
数据库·sql·网络安全·buuctf
网硕互联的小客服1 小时前
Centos系统如何更改root账户用户名?需要注意什么?
linux·运维·服务器·数据库·安全
lisanmengmeng2 小时前
zentao的prod环境升级(一)
linux·运维·数据库·docker·容器·禅道
それども2 小时前
insertOnDuplicateKey 和 upsert 区别
数据库·mysql
nbsaas-boot2 小时前
SQL Server 存储过程设计规范(事务与异常处理)
linux·数据库·设计规范
代码or搬砖3 小时前
SQL核心语法总结:从基础操作到高级窗口函数
java·数据库·sql