求sql语句,三表A\B\C合并,共有字段a,b,求:将B和C表与A表中a,b字段一致的数据形成新的表D!

例如:A表:a,b,c1,c2,c3B表:a,b,d1,d2,d3C表:a,b,e1,e2,e3生成的D表:a,b,c1,c2,c3,d1,d2,d3,e1,e2,e3(... 例如:
A表:a,b,c1,c2,c3
B表:a,b,d1,d2,d3
C表:a,b,e1,e2,e3
生成的D表:
a,b,c1,c2,c3,d1,d2,d3,e1,e2,e3(B表中无对应a,b的则d1,d2,d3为空,C表中无对应a,b的则e1,e2,e3为空)
展开
 我来答
gongjiaxiang50
2017-05-04 · TA获得超过3171个赞
知道大有可为答主
回答量:2432
采纳率:50%
帮助的人:1136万
展开全部
select A表.a, A表.b, c1,c2,c3, d1,d2,d3,e1,e2,e3 into D表 from A表, B表, C表
where A表.a=B表.a and A表.b=B表.b and A表.a=C表.a and A表.b=C表.b ;
insert D表(a, b, c1,c2,c3, d1,d2,d3)
select A表.a, A表.b, c1,c2,c3, d1,d2,d3 from A表, B表
where A表.a=B表.a and A表.b=B表.b and (A表.a, A表.b) not in (select ,a,b from C表);
insert D表(a, b, c1,c2,c3, e1,e2,e3)
select A表.a, A表.b, c1,c2,c3, e1,e2,e3 from A表, C表
where A表.a=C表.a and A表.b=C表.b and (A表.a, A表.b) not in (select ,a,b from B表);
追问
这行这个的时候:where A表.a=B表.a and A表.b=B表.b and (A表.a, A表.b) not in (select ,a,b from C表);
提示

在应使用条件的上下文(在 ',' 附近)中指定了非布尔类型的表达式。
解0人
2017-05-04 · TA获得超过2389个赞
知道大有可为答主
回答量:1474
采纳率:83%
帮助的人:800万
展开全部
--所有的a,b在A表中都存在吧?试试:
select A.* ,B.d1,B.d2,B.d3,C.e1,C.e2,C.e3 from A
left join B on A.a=B.a and A.b=B.b
left join C on A.a=C.a and A.b=C.b
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式