我正在寻找一种方法来从SQL脚本中的求和列中加总另一个数量。
制作更简单的剧本
SELECT c.customerName, b.bankName, sum(1) as ExceptionCount
FROM customer c INNER JOIN bank b on c.customerBranchId =
b.branchId
INNER JOIN exception e ON c.customerId = e.exceptionId
GROUP BY b.bankName, customerName
ORDER BY b.bankName, customerName
所以,如果我运行这个,我的结果是这样的:
BOB bank1 17
Sue bank2 8
Steve bank3 12
我正在寻找的另一个专栏是对客户名称的异常进行汇总,以便将其转换为
BOB bank1 17 3 <-- This is the exceptionCount By CustomerName
Sue bank2 8 2 (that's what I am looking for)
Steve bank3 12 4
答案 0 :(得分:0)
类似的东西:
SELECT b.bankId, b.bankName, c.customerId, c.customerName, c.customerNumber,
count(*) exceptionCount
FROM
exception AS ex INNER JOIN exceptionDefinition AS ed
ON ex.exceptionDefId=ed.exceptionDefId
INNER JOIN customer AS c ON c.customerId=ex.customerId
INNER JOIN bank AS b ON c.bankId=b.bankId
LEFT OUTER JOIN loan AS l ON ex.loanId=l.loanId
LEFT OUTER JOIN collateral AS cl ON cl.collateralLoanId=l.loanId
LEFT OUTER JOIN exceptedDocument AS exdoc ON
exdoc.exceptionId=ex.exceptionId
WHERE
ex.statusType = 'required'
AND ((ed.computationType = 'manual' AND ex.exceptionState <> 'N')
OR(ed.computationType ='computed' AND exdoc.documentExceptionState > 'N') )
GROUP BY
b.bankId, b.bankName, c.customerId, c.customerName, c.customerNumber
ORDER BY
b.bankName,
c.customerName,
l.loanNumber
如果外部联接返回许多行,您可能需要执行count(distinct ex.exceptionId)