多表查询中既有内连接又有左连接,该怎么写?

来源:百度知道 编辑:UC知道 时间:2024/07/03 04:34:07
要做一个查询,五个表连接,既有内连接,又有外连接,该怎么写??
SELECT c.cCusAbbName 单位名称,
sum(CASE WHEN DLS.cInvCode LIKE '21%' THEN DLS.iQuantity END) 发货数量,
DLS.iTaxUnitPrice 价格,sum(DLS.iNatSum) 总金额,
SUM(CASE WHEN DLS.cInvCode LIKE '20%' THEN DLS.iNatSum END)包装桶费用/*,
SUM(CASE WHEN SPVS.cExpCode IN ('001','005','006') THEN SPVS.INatMoney END )运费,
(sum(DLS.iNatSum)-SUM(CASE WHEN DLS.cInvCode LIKE '20%' THEN DLS.iNatSum END)-SUM(CASE WHEN SPVS.cExpCode IN ('001','005','006') THEN SPVS.INatMoney END ))/sum(DLS.iQuantity) 净水价格,
SUM(ACB.iAmount) 实收货款,'' 余额, ''备注*/

FROM DISPATCHLIST DL
INNER JOIN DISPATCHLISTS DLS ON DL.DLID=DLS.DLID
INNER JOIN CUSTOMER C ON C.cCusCode=DL.cCusCode
LEFT OUTER JOIN SalePayVouch SPV ON DL.cCusCode=SPV.cCusCode
INNER JOIN SalePayVouchS SPVS ON SPVS.ID=SPV.ID
LEFT OUTER JOIN AP_CLOSEBILL ACB ON DL.cCusCode =ACB.cDwCode
group

内联只能连一个
FROM DISPATCHLIST DL, DISPATCHLISTS DLS
INNER JOIN CUSTOMER C ON C.cCusCode=DL.cCusCode
LEFT OUTER JOIN SalePayVouch SPV ON DL.cCusCode=SPV.cCusCode
LEFT OUTER JOIN SalePayVouchS SPVS ON SPVS.ID=SPV.ID
LEFT OUTER JOIN AP_CLOSEBILL ACB ON DL.cCusCode =ACB.cDwCode
WHERE DL.DLID=DLS.DLID
group by c.cCusAbbName,DLS.iTaxUnitPrice
order by c.cCusAbbName