以前会的,已经忘了! 还望大家指点一下!

skyclin 2018-01-31 02:04:57
A表
  任务号   作业号    数量  重量
  0001 1801001 3 344
0001 1801002 6 893
0002 1801003 6 734
0003 1801004 9 1838

B表
任务号 仓位 重量
0001 1 32
0001 2 53
0001 3 174
0002 1 32
0002 2 88
0002 3 189

我要达到效果是:
任务号   作业号    数量   重量 仓位1重量 仓位2重量 仓位3重量
  0001 1801001 3 344 32 53 174
0001 1801002 6 893 32 53 174
0002 1801003 6 734 32 88 189
0003 1801004 9 1838


SQL怎么写?
...全文
333 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
二月十六 2018-01-31
  • 打赏
  • 举报
回复
--测试数据
if not object_id(N'Tempdb..#A') is null
drop table #A
Go
Create table #A([任务号] nvarchar(24),[作业号] int,[数量] int,[重量] int)
Insert #A
select N'0001',1801001,3,344 union all
select N'0001',1801002,6,893 union all
select N'0002',1801003,6,734 union all
select N'0003',1801004,9,1838
GO
if not object_id(N'Tempdb..#B') is null
drop table #B
Go
Create table #B([任务号] nvarchar(24),[仓位] int,[重量] int)
Insert #B
select N'0001',1,32 union all
select N'0001',2,53 union all
select N'0001',3,174 union all
select N'0002',1,32 union all
select N'0002',2,88 union all
select N'0002',3,189
Go
--测试数据结束
SELECT #A.* ,
SUM(CASE WHEN 仓位 = 1 THEN #B.重量
ELSE 0
END) AS 仓位1重量 ,
SUM(CASE WHEN 仓位 = 2 THEN #B.重量
ELSE 0
END) AS 仓位2重量 ,
SUM(CASE WHEN 仓位 = 3 THEN #B.重量
ELSE 0
END) AS 仓位3重量
FROM #A
LEFT JOIN #B ON #B.任务号 = #A.任务号
GROUP BY #A.任务号 ,
#a.作业号 ,
#A.数量 ,
#A.重量


企业实战持续集成-Jenkins视频教程(必备技能)软件版本:Jenkins 1.625 Linux零基础、初学者、中级运维、高级运维,让你轻松突破高薪20K+,通过本套实战课程的全程学习,能力跨越一个台阶,选择和努力决定薪资,向高级运维工程师迈进。通过本课程的学习,大家可以从懵懂到熟悉,从熟悉到熟练,能够在企业中熟练运用,同时在学习的过程中有任何不明白的地方,都可以向我咨询,我积极帮助大家解决问题。   课程增值:    1、通过购买本课程你可以全套的有目标的学习企业必备运维知识,有目标有方向。    2、大家购买的不仅仅是一个课程,课程只是一种学习方式,免费加入员群,你的所有问题都在第一时间得到解答,实现真正的全程辅导。    3、能够得到全程的辅导,我耐心的帮助大家,指导大家在工作和生活中积极向上,你得到满满的正能量。    4、我教你的不仅仅技术,而且教你做人做事的方法,让你受益一辈子,这才最重要的。   5、大家认真学习完整套课程,工作的机是非常非常多,所以从现在起,就要努力提升自己的能力,有句话说的好:如果自己都不愿意动,别人还怎么帮助你,只要你动,我协助和推荐你工作,分析在面试中的不足,然后改进,让你得到你真正想要的工作。进入BAT也是有可能的哦,一切还得取决于你。适合对象:本课程适合真正想改变,有决心有毅力,想通过技术改变自己,想学习的人,适合Linx初学者,Linux爱好者,Linux初级、Linux中级,以及想进一步发展为Linux高级资深运维工程师。学习条件:有一台自己的PC机、或者笔记本即可,能安装常用软件VMware等,能够主动学习。把学习当成自己的一回事。相信每位同学付出努力的同时,一定有美好的结果,我们一起努力!学习宣言:我曾经经历过学习Linux的苦恼,没有人指点,进步慢如蜗牛,也是非常荣幸得到很多人的帮助和指导,所以今天想帮助真心想学习的朋友,少走弯路,用技术成就自己的梦想。讲课风格:Linux从入门到高级系列全部重点放在企业应用上面,课程主要针对互联网企业运维,因此不花多余的时间去阐述无关紧要和企业用不到的东西,所以全程都是围绕实战运维,操作为主。

27,579

社区成员

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

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