N
nancy_yan012
Unregistered / Unconfirmed
GUEST, unregistred user!
有两个表a,b,它们之间用id相关联,现在需要生成一个数据集:
table a: table b:
id 日期 成本 id 日期 费用
------------ -------------
生成:
id 月份 成本 费用
----------------------
select case when aaa.id is not null then aaa.id else bbb.id,
case when aaa.月份 is not null then aaa.月份 else bbb.月份,成本,费用
from
(select id,convert(char(6),日期,112) as 月份 ,sum(成本) as 成本
from a group by convert(char(6),日期,112),id
) as AAA
full join
(select id,convert(char(6),日期,112) as 月份 ,sum(费用) as 费用
from a group by convert(char(6),日期,112),id
) as bbb
on aaa.月份=bbb.月份 and aaa.id=bbb.id
以上语句存在一个错误:
当b表中不存在该月份的数据而a表有时,则所生成的数据集中a表的该条数据不存在。
不知道这句语该怎样写
table a: table b:
id 日期 成本 id 日期 费用
------------ -------------
生成:
id 月份 成本 费用
----------------------
select case when aaa.id is not null then aaa.id else bbb.id,
case when aaa.月份 is not null then aaa.月份 else bbb.月份,成本,费用
from
(select id,convert(char(6),日期,112) as 月份 ,sum(成本) as 成本
from a group by convert(char(6),日期,112),id
) as AAA
full join
(select id,convert(char(6),日期,112) as 月份 ,sum(费用) as 费用
from a group by convert(char(6),日期,112),id
) as bbb
on aaa.月份=bbb.月份 and aaa.id=bbb.id
以上语句存在一个错误:
当b表中不存在该月份的数据而a表有时,则所生成的数据集中a表的该条数据不存在。
不知道这句语该怎样写