标题:求SQL查询修改用B表的内容修改A表
取消只看楼主
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
结帖率:50%
已结贴  问题点数:20 回复次数:6 
求SQL查询修改用B表的内容修改A表
请教SQL语句,依据表“B”中的“政治面貌”和“学历”修改更新表“A”的相关内容,表“B”中没有的记录表“A”不更新,两表中“职员代码”是相同的。如下表,请问如何用SQL语句完成:
A表
序号    姓名    职员代码    性别    进入时间    民族    政治面貌    学 历
1    崔文辉    1166    男    2010-09-01    汉族    中共党员    本科
2    尹拴存    1167    男    1992-09-01    汉族    群众    大专
3    杨兴文    1171    男    1993-02-25    汉族    群众    中专
…… …… …… …… …… …… …… ……………………
36    李登玉    1144    男    2006-09-01    汉族    群众    中专
B表
序号    姓名    职员代码    政治面貌    学 历
1    朱彩萍    1183    中共党员    本科
2    张红艳    1526    中共党员    硕士研究生
3    高春娥    1818    中共党员    本科
4    李小霞    1761    中共党员    本科



Database1.zip (13.63 KB)



[此贴子已经被作者于2016-2-12 23:43编辑过]

搜索更多相关主题的帖子: 记录表 本科 大专 民族 如何 
2016-02-10 00:11
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
得分:0 
回复 2楼 hu9jj
版主,我只更新“政治面貌”用如下公式,但是提示“必须使用一个可更新的查询”,一次更新“政治面貌”、“学历”就更不会了,我百度查了好多,此类例子太少,也没有试成功。还请版主赐教。
UPDATE A SET A.政治面貌=( Select B.政治面貌  from B  where B.职员代码=A.职员代码) Where A.职员代码  in (Select  B.职员代码  from B )


Database1.zip (13.63 KB)



[此贴子已经被作者于2016-2-12 23:45编辑过]

2016-02-11 20:25
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
得分:0 
回复 3楼 紫月一殇雪
我百度找了好多,像这种例子几乎没有,也没有试成功,下面是我参照写的语句,还是不行。
UPDATE A SET A.政治面貌=( Select B.政治面貌  from B  where B.职员代码=A.职员代码) Where A.职员代码  in (Select  B.职员代码  from B )




Database1.zip (13.63 KB)







[此贴子已经被作者于2016-2-12 23:41编辑过]

2016-02-11 20:27
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
得分:0 
回复 5楼 汭水飞天
浏览器出问题了

[此贴子已经被作者于2016-2-17 10:59编辑过]

2016-02-16 18:27
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
得分:0 
回复 6楼 tlliqi
版主您好,我用MDBPlus.EXE运行“UPDATE A SET 政治面貌=(Select B.政治面貌 from B where B.职员代码=A.职员代码)”  和  “UPDATE A SET A.政治面貌=( Select B.政治面貌  from B  where B.职员代码=A.职员代码) Where A.职员代码  in (Select  B.职员代码  from B )”时都是提示“操作必须使用一个可更新的查询”,还请版主赐教。

MDBPlus汉化版.zip (1.4 MB)
2016-02-17 10:59
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
得分:0 
怎么回事啊,问题没有解决呢,怎么就结贴了???
2016-02-18 02:08
汭水飞天
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2016-2-9
得分:0 
UPDATE A SET A.政治面貌=( Select B.政治面貌  from B  where B.职员代码=A.职员代码) Where A.职员代码  in (Select  B.职员代码  from B )
此语句在SQL管理器下可以运行,但是在MDBPlus.EXE就是不能运行。
2016-02-27 00:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-461654-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.205532 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved