求sql语句

tinkou 2010-07-04 12:36:50
数据库中有一个表中的序号需要更新成,1,2,3,这样的序号排列,如何写语句更新整个表的序号?

列名 单据id 序号 内部id
3 601 258763
3 602 258764
4 689 260035
4 690 260036
4 691 260034
现在数据表中的数据通过语句如何生成
列名 单据id 序号 内部id
3 1 258763
3 2 258764
4 2 260035
4 3 260036
4 1 260034
...全文
49 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
bancxc 2010-07-04
  • 打赏
  • 举报
回复
update t set
序号=(select count(1)+1 from tb where 单据id=t.单据id and 部id<t.部id
from tb t
tinkou 2010-07-04
  • 打赏
  • 举报
回复
一条更新语句如何实现
da003 2010-07-04
  • 打赏
  • 举报
回复
如果是2005,可以用 ROW_NUMBER()
百年树人 2010-07-04
  • 打赏
  • 举报
回复
select 单据id,
序号=(select count(1)+1 from tb where 单据id=t.单据id and 部id<t.部id),
内部id
from tb t

更新也是一个道理
da003 2010-07-04
  • 打赏
  • 举报
回复
newid

34,590

社区成员

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

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