update hdzx_question set c_qusType=1 where c_deptId =52;
select * from [dbo].[BECBoardMessage] where Prop1='zx';
现在需要从[dbo].[BECBoardMessage]表中查询出Prop1='zx';的所有数据,以此来更新hdzx_question表中的c_qusType,使
c_qusType=1
还请大神指点一二
6 个解决方案
#1
UPDATE hdzx_question
SET c_qusType = 1
WHERE c_deptId = 52
AND EXISTS ( SELECT 1
FROM [dbo].[BECBoardMessage]
WHERE Prop1 = 'zx'
AND hdzx_question.id = BECBoardMessage.id ) --这个链接关系lz自己用相关字段连一下
#2
update hdzx_question a set a.c_qusType=1
from [dbo].[BECBoardMessage] b
where a.c_deptId =b.c_deptId and b.Prop1='zx'
关联字段我自己帮你加的,对不对得看你真实业务
#3
这个不行,全都更新了
没有更新符合条件的,也就是说从select * from [dbo].[BECBoardMessage] where Prop1='zx';查询出多少条,就更新多少条,但是这个把全部的都更新了
#4
关键是比要把两个表的连接条件要说一下啊
#5
-- 大概就是这样的语法
update A set A.col1= B.col1, A.col2 = B.col2 , .....
from mytable A , youtable B
where A.ID = B.ID and ........
#6
用游标试一试
#1
UPDATE hdzx_question
SET c_qusType = 1
WHERE c_deptId = 52
AND EXISTS ( SELECT 1
FROM [dbo].[BECBoardMessage]
WHERE Prop1 = 'zx'
AND hdzx_question.id = BECBoardMessage.id ) --这个链接关系lz自己用相关字段连一下
#2
update hdzx_question a set a.c_qusType=1
from [dbo].[BECBoardMessage] b
where a.c_deptId =b.c_deptId and b.Prop1='zx'
关联字段我自己帮你加的,对不对得看你真实业务
#3
这个不行,全都更新了
没有更新符合条件的,也就是说从select * from [dbo].[BECBoardMessage] where Prop1='zx';查询出多少条,就更新多少条,但是这个把全部的都更新了
#4
关键是比要把两个表的连接条件要说一下啊
#5
-- 大概就是这样的语法
update A set A.col1= B.col1, A.col2 = B.col2 , .....
from mytable A , youtable B
where A.ID = B.ID and ........
#6
用游标试一试