WITH #销售合同 AS ( SELECT t0.FID,t0.FBILLNO AS 'FNumber' ,t0.FNAME as FName ,t0.FDOCUMENTSTATUS ,t0.F_CYG_ContractNoDL ,'A' AS 'FFORBIDSTATUS' ,t0f.FCONTRACTAMOUNT FROM T_CRM_CONTRACT t0 INNER JOIN T_CRM_CONTRACTFIN t0f on t0f.FID = t0.FID WHERE t0.FDOCUMENTSTATUS = 'C' ) , #销售订单 AS ( SELECT t0.FID AS 'CONTRACT_ID' ,t1.FID AS 'SALID' ,t1.FBILLNO ,t1f.FBILLAMOUNT FROM #销售合同 t0 INNER JOIN T_SAL_ORDER t1 on t1.FCRMContractId = t0.FID INNER JOIN T_SAL_ORDERFIN t1f on t1f.FID = t1.FID ) , #销售出库单 AS ( SELECT SUM(t2e_f.FAMOUNT) AS DEBILLAMOUNT,t0.CONTRACT_ID FROM #销售订单 t0 INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --发货通知单关系表 ON t0.SALID = t1e_lk.FSBILLID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY' INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk --销售出库单关系表 ON t1e_lk.FENTRYID = t2e_lk.FSID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY' INNER JOIN T_SAL_OUTSTOCKENTRY_F t2e_f on t2e_f.FENTRYID = t2e_lk.FENTRYID GROUP BY t0.CONTRACT_ID ) SELECT t0.*,ISNULL(t1.FBILLNO,''),ISNULL(t1.FBILLAMOUNT,0),ISNULL(t2.DEBILLAMOUNT,0) FROM #销售合同 t0 LEFT JOIN #销售订单 t1 on t0.FID = t1.CONTRACT_ID LEFT JOIN #销售出库单 t2 on t0.FID = t2.CONTRACT_ID