请教一个修改数据的问题

zzxiaoma 2006-07-11 09:45:59
表结构如下:
dscardno dspeopno
001 5
001 6
001 7
002 8
002 9
003 10
004 11
我想让他成为
dscardno dspeopno
001 1
001 2
001 3
002 1
002 2
003 1
004 1
...全文
129 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
wgsasd311 2006-07-11
  • 打赏
  • 举报
回复
select dscardno,dspeopno=(select count(1) from tb where dscardno=a.dscardno and dspeopno<=a.dspeopno)
from tb a order by dscardno,dspeopno
LouisXIV 2006-07-11
  • 打赏
  • 举报
回复
--try


update a
set dspeopno=(select count(1) from tablename where dscardno=a.dscardno and dspeopno<=a.dspeopno)
from tablename a
fcuandy 2006-07-11
  • 打赏
  • 举报
回复
declare @tb table(dscardno varchar(10),dspeopno int)
insert @tb
select '001' ,5
union all select
'001' , 6 union all select
'001' , 7 union all select
'002' , 8 union all select
'002' , 9 union all select
'003' , 10 union all select
'004', 11

UPDATE a
SET dspeopno=(SELECT COUNT(1) FROM @tb b WHERE b.dscardno=a.dscardno AND b.dspeopno<=a.dspeopno)
FROM @tb a

select * from @tb

001 1
001 2
001 3
002 1
002 2
003 1
004 1

34,837

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧