update select 问题

li123k 2014-02-14 05:14:33
现有表A和表B,两个表中的字段一模一样(共50个字段),假设表A中已存在一条数据(50个字段中全部有数据),而表B中只存在两个数据(bindid和jc,其中bindid是这条数据的唯一标识) ,现我想将表A的数据全部update到表B中,请问SQL语句该怎么写?
(我用的是sql server)
表A

表B


下面是我的SQL语句:
update 表A SET (CWBM, ZWMC, SXDM, YWMC, JSBZ, GJCS, TYDNR, CZ, LXDH,
DZYJ, GSWZ, GJZ, HGBM, FJSM, BCODE, HYCZ, KYCZ, FKQX, FPTT, YWY, HZLX, HZXZ, TBZY,
THDM, YFDM, FTYHSM, XXK, DZ, YB, CKLX, PTDL, CGSDL, HXDL, ZJDL1, JJDL, ZJDL2,
DLCGS, CKDZ, KHLX, FKQX2, FKQX3, TQQX2, TQQX, TBZY2, DZ1, DZ2, GSLX1, GSLX2, GSLX3,
GSLX4, GSLX5, GSLX6, GSLX7, WTDW, SPQK)=(select CWBM, ZWMC, SXDM, YWMC, JSBZ,
GJCS, TYDNR, CZ, LXDH, DZYJ, GSWZ, GJZ, HGBM, FJSM, BCODE, HYCZ, KYCZ, FKQX,
FPTT, YWY, HZLX, HZXZ, TBZY, THDM, YFDM, FTYHSM, XXK, DZ, YB, CKLX, PTDL, CGSDL,
HXDL, ZJDL1, JJDL, ZJDL2, DLCGS, CKDZ, KHLX, FKQX2, FKQX3, TQQX2, TQQX, TBZY2,
DZ1, DZ2, GSLX1, GSLX2, GSLX3, GSLX4, GSLX5, GSLX6, GSLX7, WTDW, SPQK from
表B where jc= 'h') where bindid ='11234'
请大神帮忙!!
...全文
248 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
liao_1000 2014-03-07
  • 打赏
  • 举报
回复
用union 试试。
發糞塗牆 2014-02-14
  • 打赏
  • 举报
回复
可以用这个方式来生成脚本,不过还是要调整
li123k 2014-02-14
  • 打赏
  • 举报
回复
引用 3 楼 DBA_Huangzj 的回复:
你要全部update的话,直接insert into 更好
其实在这个表中还有其他的标示,是系统自动生成的,也改不了,所以insert into 是用不了的,只能用update
LongRui888 2014-02-14
  • 打赏
  • 举报
回复
引用 4 楼 u012109201 的回复:
但是我这两个表有50多个字段,那不是要一个一个弄上去?那还有简便的方法实现这个效果吗?我还有其他的字段数更多的表需要实现这个功能。。。。
如果是update,那只能这么些。 也可以先delete ,然后插入: delete from b where bindid ='11234' insert into b select * from a where bindid ='11234'
li123k 2014-02-14
  • 打赏
  • 举报
回复
但是我这两个表有50多个字段,那不是要一个一个弄上去?那还有简便的方法实现这个效果吗?我还有其他的字段数更多的表需要实现这个功能。。。。
發糞塗牆 2014-02-14
  • 打赏
  • 举报
回复
你要全部update的话,直接insert into 更好
發糞塗牆 2014-02-14
  • 打赏
  • 举报
回复
语法本来就不能这样写的
LongRui888 2014-02-14
  • 打赏
  • 举报
回复
改成类似这样的: update 表B SET CWBM = a.CWBM, ZWMC = a.ZWMC, ... from 表B b inner join 表A a on a.bindid = b.bindid where a.jc= 'h' and b.bindid ='11234'

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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