求个SQL写法

微信图片_20191028162029.png有A.B两张表,怎么查询可以得出C表

13207222709 发布于 2019-10-28 16:21
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共4回答
最佳回答
0
qhlLv6中级互助
发布于2019-10-28 16:30

select AA.name,

   A.语文成绩,

   B.数学成绩

from

(select distinct name from A

union 

select distinct name from B) AA


left join A

on A.name=AA.name

left join B

on B.name=AA.name


最佳回答
0
1310415720Lv7中级互助
发布于2019-10-28 16:24(编辑于 2019-10-28 16:25)

select A.语文成绩,B.数学成绩,A.name from A left join  B on A.name=B.name

最佳回答
0
格调Lv6初级互助
发布于2019-10-28 16:26(编辑于 2019-10-28 16:26)


select a.name,a.语文成绩,b.数学成绩 from A a FULL JOIN B b ON a.name = b.name


最佳回答
0
萌萌的呆贼Lv4初级互助
发布于2019-10-28 16:41

--第一种

select

name,

sum(ywcj) as ywcj,

sum(sxcj) as sxcj

from

(select name,[语文成绩] as ywcj,0 as sxcj from A

union all

select name,0 as ywcj,[数学成绩] as sxcj from B) as x

group by name

--第二种

select

case when A.name is not null then A.name else B.name end as name,

isnull(A.[语文成绩],0) as ywcj,

isnull(B.[数学成绩],0) as sxcj

from A

full join B

on A.name = B.name


  • 5关注人数
  • 622浏览人数
  • 最后回答于:2019-10-28 16:41
    请选择关闭问题的原因
    确定 取消
    返回顶部