oracle多表查询进行修改的语句 10

如图有以上两个表M和N,N是M的子集,是查询语句(select*fromm,qwherem1=q1andm2=q2,m3=q3)虚拟出来的表,现在要将既在表M又在表N中的... 如图有以上两个表M和N,N是M的子集,是查询语句(select * from m,q where m1=q1 and m2=q2,m3=q3)虚拟出来的表,现在要将既在表M又在表N中的数据的M2、M3两个字段值修改为t、u,求update语句? 展开
 我来答
micro0369
2014-05-13 · TA获得超过1.2万个赞
知道大有可为答主
回答量:9250
采纳率:85%
帮助的人:4038万
展开全部
update m
set m2 = 't' ,m3='u'
where exists(select 1 from q where m1=q1 and m2=q2 and m3=q3)


更新m表后,


重新执行查询,得出n

追问
我也是这么写的,M中实际数据比列举的多的多,不知道为什么实际修改的数据比期望的多很多,郁闷中~
追答
按照道理说,

select * from m,q where m1=q1 and m2=q2,m3=q3

能够查询出来的行数,就是上面sql更新的行数。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式