标题:有个问题,求大佬帮忙
只看楼主
w972312
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2018-11-26
结帖率:0
已结贴  问题点数:20 回复次数:2 
有个问题,求大佬帮忙

现在有2张表
author字段是 title 和 author

holding
字段是 barcode和 callno

现在是想查询author表的title和holding表中的barcode字段相同的值,然后。将author中auth的值,添加到holding中的callno
这是我写的 update holding h set h.CALLNO = (select a.AUTH from AUTHOR a where a.TITLE=h.BARCODE),这条语句错误了,他把我holding中callno全部变成null
搜索更多相关主题的帖子: 字段 title where 语句 全部 
2018-11-26 22:49
pracy87
Rank: 2
等 级:论坛游民
帖 子:7
专家分:20
注 册:2009-5-5
得分:20 
update  holding  h  set h.callno=(select a.AUTH from AUTHOR a where a.TITLE=h.BARCODE) where exists(select 1 from AUTHOR a where a.TITLE=h.BARCODE);
你原来的写法,没有去框定范围,如果callno在AUTHOR 表中不存在,就会更新所有的数据为空,需要指定范围
2018-11-30 21:19
Binhun
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2019-5-31
得分:0 
2019-06-04 14:54



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




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

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