求SQL语句,在线等

yl1209 2005-09-12 02:23:40
有3个表
表a
company date gp
com1 2005-1 100
com2 2005-1 200
表b
company date gp
com1 2005-2 10
com3 2005-2 20
表C
company date gp
com2 2005-3 40
com4 2005-3 60
要生成以下结果
company date(2005-1) date(2005-2) date(2005-3)
com1 100 10 0
com2 200 0 40
com3 0 20 0
com4 0 0 60

请问该SQL语句该如何写,
谢谢



...全文
66 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yl1209 2005-09-12
  • 打赏
  • 举报
回复
thank you
子陌红尘 2005-09-12
  • 打赏
  • 举报
回复
select
d.company,
[date(2005-1)]=isnull(a.gp,0),
[date(2005-2)]=isnull(b.gp,0),
[date(2005-3)]=isnull(c.gp,0)
from
(select company from 表a
union
select company from 表b
union
select company from 表c) d
left join
表a a
on
d.company = a.company
left join
表b b
on
d.company = b.company
left join
表c c
on
d.company = c.company
order by
d.company

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧