永发信息网

SQL两表关联批量更新一列数据下面有数据参考

答案:2  悬赏:60  手机版
解决时间 2021-01-25 16:21
RLB_DTL表 rlb_num,prod_id,line_num RLB表 rlb_num
A0001 C 01 1 A0001
A0001 C02 2 A0002
A0002 C01 3 A0003
A0002 C02 4
A0002 C03 5
我想要的结果是把 A表里面的line_num批量更新为下面这种状态
A0001 C 01 1
A0001 C02 2
A0002 C01 1
A0002 C02 2
A0002 C03 3
我写了语句 大家帮我修改下 谢谢
DECLARE
@num int,
@num1 int,
@rlb_num varchar(20),
@prod_id varchar(20),
@i int
set @i='1'
set @rlb_num ='120102163'
select @num1=count(*) from rlb_dtl where rlb_num=@rlb_num
WHILE @i<=@num1
begin
select @rlb_num=rlb_num,@prod_id=prod_id from rlb_dtl where rlb_num+prod_id not in(select rlb_num+prod_id from rlb_temp)
and rlb_num=@rlb_num
update rlb_dtl set line_num=@i where rlb_num =@rlb_num and prod_id=@prod_id
insert into rlb_temp(rlb_num,prod_id)values(@rlb_num,@prod_id)
set @i=@i+1
end
这里 的 @rlb_num 需要我手工定义 由于单号比较多,我就想取RLB 表里的 rlb_num 有多少 取多少次 循环判断执行
最佳答案
首先确定一下你是sqlserver几的版本
然后prod_id这个字段C01中01难道不可以当作你需要的序号吗
全部回答
update tb set line_num=case prod_id when 'c01' then 1 else 2 end 操作前先select查询确保达到要求再执行
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
关于贷款车第二年买保险的事情
东南音像地址有知道的么?有点事想过去
观察图4:该铁路通车,开创了中国人独立自主
加了辅食的妈妈看过来,辅食之后会不会攒肚子
用手机怎样设置(新的)无线路由器(TK-LINK
门对大梁有什么坏处
对于植物体来说,叶片表皮上的气孔是A光进入
配电柜安装步骤怎么安装,谁知道啊?
昆山花桥利众五金电器商店地址在什么地方,我
有那种主角是天上的神仙犯事被贬下凡间都市,
驾校考试科目二过了多久可以考科目三呢!
k628火车吃饭车厢是哪一节
【only女装官网】not noly but also 用法
科鲁兹导航断电后开不了机
我爸11月中旬手指断了,到现在整个手还是很肿
推荐资讯
能够将溶液和胶体区分开的方法是 A.过滤 B.观
在沈阳皇姑区哪个金店金子纯
色格孜勒克村怎么去啊,我要去那办事
上来村地址好找么,我有些事要过去
LaTeX中关键字怎么写出来
甲型H1N1流感病毒侵入人体后,对其免疫过程叙
青羊宫导游词600字
结构设计相关知识:抗震设计的基本原则有哪些
毕业设计重要吗
根据《建设工程勘察设计管理条例》规定,建设
the island ,
如果用两种不同方法分别切断同一碱基序列的脱
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?