• 售前

  • 售后

热门帖子
入门百科

SQL使用ROW_NUMBER() OVER函数天生序列号

[复制链接]
123456806 显示全部楼层 发表于 2022-1-9 07:04:27 |阅读模式 打印 上一主题 下一主题
语法:
  1. ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)<br />
复制代码
简朴的说
  1. ROW_NUMBER()
复制代码
从1开始,为每一条分组记载返回一个数字,这里的
  1. ROW_NUMBER() OVER (ORDER BY CYLH DESC)
复制代码
是先把xlh列降序,再为降序以后的每条CYLH记载返回一个序号。
示例: 

分析:
  1. ROW_NUMBER() OVER (PARTITION BY COL1 ORDER BY COL2)
复制代码
表示根据COL1分组,在分组内部根据
  1. COL2
复制代码
排序,而此函数盘算的值就表示每组内部排序后的顺序编号(组内一连的唯一的)
也可如许使用:
  1. ROW_NUMBER() OVER (ORDER BY COL2)
复制代码
  1. 例子:
复制代码
建立测试表,并插入测试数据
  1. CREATE TABLE TEST_ROW_NUMBER_01(
  2.        CMZH varchar(10) not null,
  3.        CYLH varchar(10) null,
  4.        MJE money null,
  5. );
复制代码
  1. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES (2106000011,20281997,10.50)
  2. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000010,20281996,10.50)
  3. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000008,20281995,0.00)
  4. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000006,20281994,9.50)
  5. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000004,20281993,5.50)
  6. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000001,20281992,10.50)
  7. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000002,20281992,10.50)
  8. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000007,20217280,0.00)
  9. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000009,20172458,5.50)
  10. INSERT INTO TEST_ROW_NUMBER_01(CMZH,CYLH,MJE) VALUES(2106000005,20121813,0.00)
复制代码
实验脚本主动天生行号并按CYLH进行排序(滑动检察代码)
  1. SELECT ROW_NUMBER()OVER(ORDER BY CYLH DESC) AS ROWNUM,* FROM TEST_ROW_NUMBER_01
复制代码
效果如下:

 留意:在使用
  1. over
复制代码
等开窗函数时,
  1. over
复制代码
里头的分组及排序的实验晚于“
  1. where
复制代码
  1. group by
复制代码
  1. order by
复制代码
”的实验。
到此这篇关于SQL使用ROW_NUMBER() OVER函数天生序列号的文章就先容到这了,更多相干SQL用ROW_NUMBER() OVER天生序列号内容请搜索脚本之家以前的文章或继续浏览下面的相干文章希望各人以后多多支持脚本之家!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作