关闭

同一表内,各部份行自动重新编号T-SQL处理代码

988人阅读 评论(0) 收藏 举报

                        --同一表内,各部份行自动重新编号T-SQL处理代码

 select identity(int,1,1) as id,* into # from DS order by Department

select Department,min(id) as n,max(id) as m into #DMN
from #
group by Department

update DS set DS.[Sequence]=a.id-(d.n-1)
from # as a,#DMN as d
where a.custid=DS.custid and a.Department=d.Department

drop table #
drop table #DMN

--附:DS表生成脚本及执行结果示意图

CREATE TABLE [dbo].[DS] (
 [CustId] [int] NOT NULL  PRIMARY KEY,
 [Department] [varchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,
 [Sequence] [int] NULL
) ON [PRIMARY]

 

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:916855次
    • 积分:12934
    • 等级:
    • 排名:第1078名
    • 原创:266篇
    • 转载:276篇
    • 译文:5篇
    • 评论:504条
    最新评论
    常见的技术网站
    同事的dondon
    我的个人网站