当前位置:Gxlcms > 数据库问题 > SQL server使用ROW_NUMBER() OVER()做过滤

SQL server使用ROW_NUMBER() OVER()做过滤

时间:2021-07-01 10:21:17 帮助过:28人阅读

 

有个需求要求过滤掉同单号的 未检验数据, 如果已检验数据和未检验数据同时存在,则取已检验数据,如果只有未检验数据,取未检验数据

后来找的一个解决方案  使用ROW_NUMBER() OVER()做过滤   

具体如下 

 

 

( SELECT ROW_NUMBER ( ) OVER ( PARTITION BY ***_id ORDER BY check_status DESC ) num, * FROM ***_***_check_header ) fich

 

搭配 

 

AND fich.num= 1 

 

成功完成过滤

 

SQL server使用ROW_NUMBER() OVER()做过滤

标签:ber   存在   完成   ***   bsp   des   check   方案   order   

人气教程排行