ROW_NUMBER() OVER()函数用法详解

今天同事问了一个关于插入表的问题,对象:被插入表sys_equi_disorg   A  , 查询表sys_equi_dict   B

因为A表的ID不是自增的,并且不能更改表结构,主键默认值还是0,客户想将B表中的数据插入到A表中,但是A表中已存在数据,主键ID唯一,我想到了row_number()函数用法,下面是我提供的sql方法,并借此机会温习一下这个函数

 INSERT  into  sys_equi_disorg  ( comp_code,equi_id,mate_dis_id) 
SELECT a.up_comp_code,a.equi_id,row_number()over(order by equi_id desc)+(select max(mate_dis_id) from sys_equi_disorg) rn FROM  sys_equi_dict  a  

点击温习  -----ROW_NUMBER() OVER()函数用法详解 

你可能感兴趣的:(ROW_NUMBER() OVER()函数用法详解)