SQL这四个查询语句怎么left join才不会出错 有SUM GROUP BY

[code=sql]select制单日期,生产批号,物料编码,计划数量from生产计划单_主表V2select生产批号,sum(领料数量)as刻槽投入from刻槽领料单_... [code=sql]select 制单日期,生产批号,物料编码,计划数量 from 生产计划单_主表V2

select 生产批号,sum(领料数量) as 刻槽投入 from 刻槽领料单_主表 group by 生产批号

select 生产批号,sum(完工数量) as 刻槽回收 from 刻槽回收单_主表,刻槽回收单_明细
where 刻槽回收单_主表.ExcelServerRCID = 刻槽回收单_明细.ExcelServerRCID
group by 生产批号

select 生产批号,sum(完工数量) as 焊接回收 from 点焊回收单_主表,点焊回收单_明细
where 点焊回收单_主表.ExcelServerRCID = 点焊回收单_明细.ExcelServerRCID
group by 生产批号

--提示:生产批号相等,明细表不含生产批号,但是明细表与主表ExcelServerRCID字段相等
[/code]
展开
 我来答
快乐猪头每一天
2014-04-10
知道答主
回答量:1
采纳率:0%
帮助的人:2.3万
展开全部
[code=sql]select a.制单日期,a.生产批号,a.物料编码,a.计划数量,b.刻槽投入,c.刻槽回收,d.焊接回收 from 生产计划单_主表 a
left join
(select 生产批号,sum(领料数量) as 刻槽投入 from 刻槽领料单_主表 group by 生产批号) b on a.生产批号=b.生产批号

left join
(select 生产批号,sum(完工数量) as 刻槽回收 from 刻槽回收单_主表,刻槽回收单_明细
where 刻槽回收单_主表.ExcelServerRCID = 刻槽回收单_明细.ExcelServerRCID
group by 生产批号 ) c
on a.生产批号=c.生产批号

left join

(select 生产批号,sum(完工数量) as 焊接回收 from 点焊回收单_主表,点焊回收单_明细
where 点焊回收单_主表.ExcelServerRCID = 点焊回收单_明细.ExcelServerRCID
group by 生产批号 ) d
on a.生产批号=d.生产批号
--提示:生产批号相等,明细表不含生产批号,但是明细表与主表ExcelServerRCID字段相等
[/code]
追问

这个是原始数据


按照您的语句  没有结果返回 都是 NULL

追答
在?问题解决了不?感觉SQL语句没有问题?如果有问题,qq吧 987568465
百度网友9441b840e
2014-04-10 · 超过32用户采纳过TA的回答
知道答主
回答量:98
采纳率:0%
帮助的人:80.2万
展开全部
select 制作日期,生产批号,材料编码,计划数量,
case when 领料数量 is null then null else 领料数量 end 领料数量,
case when 完工数量 is null then null else 完工数量 end 完工数量 from
声场计划单V2 v inner join 刻槽领料单 k on v.生产批号=k.生产批号
inner join 点焊回收单 d on v.生产批号=d.生产批号
inner join 点焊回收明细 dh on d.ExcelServerRCID=dh.ExcelServerRCID

不明白再问!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式