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