select ISNULL(T1.月份,T2.月份) as 月份,
装配总数,合同金额,装配成本,装配利润,装配利润率,
销售台数,开票金额,销售成本,销售利润,销售利润率
FROM
(
select cast(YEAR(EXTEND50) as nvarchar(4)) + '-' + cast(MONTH(EXTEND50) as nvarchar(2)) as 月份,
COUNT(sub_account_id) as 装配总数,
SUM(discount_money) as 合同金额 ,
SUM(EXTEND36) as 装配成本 ,
SUM(discount_money) / 1.17 - SUM(EXTEND36) as 装配利润 ,
(SUM(discount_money) / 1.17 - SUM(EXTEND36) ) / SUM(discount_money) as 装配利润率
from T_CONTRACT_ORDER
WHERE EXTEND1 = '装配工程单' AND EXTEND50 >= @KSRQ AND EXTEND50 <= @JSRQ
Group By cast(YEAR(EXTEND50) as nvarchar(4)) + '-' + cast(MONTH(EXTEND50) as nvarchar(2))
) T1
FULL OUTER JOIN
(
Select cast(YEAR(O.EXTEND50) as nvarchar(4)) + '-' + cast(MONTH(O.EXTEND50) as nvarchar(2)) as 月份,
SUM(D.INVOICED_NUM) as 销售台数,
SUM(O.INVOICED_MONEY) as 开票金额 ,
SUM(O.EXTEND36) as 销售成本 ,
SUM(O.INVOICED_MONEY) / 1.17 - SUM(O.EXTEND36) as 销售利润 ,
(SUM(O.INVOICED_MONEY) / 1.17 - SUM(O.EXTEND36) ) / SUM(O.INVOICED_MONEY) as 销售利润率
FROM T_CONTRACT_ORDER O INNER JOIN T_CONTRACT_ORDER_detail D ON O.sub_account_id = D.sub_account_id
where O.EXTEND50 >= @KSRQ AND O.EXTEND50 <= @JSRQ and O.EXTEND1 = '工程销售'
GROUP BY cast(YEAR(O.EXTEND50) as nvarchar(4)) + '-' + cast(MONTH(O.EXTEND50) as nvarchar(2))
) T2
ON T1.月份 = T2.月份