[英]How can I aggregate a column of bits?
我有这个查询:
SELECT
MAX(P.Descricao) AS Name,
SUM(FC.Credito) AS Sales,
CAST(CASE
WHEN FC.Troco = 1 THEN SUM(FC.Debito)
ELSE 0
END AS decimal(10, 2)) AS Purchases
FROM
FluxoCaixa FC
INNER JOIN
Pagamento P ON FC.ID_Pagamento = P.Pagamento
我收到此错误:
列 'FluxoCaixa.Troco' 在 select 列表中无效,因为它不包含在聚合 function 或 GROUP BY 子句中
我知道返回错误是因为FC.Troco
列未聚合,但如何聚合其值为位的列?
在CASE-WHEN
中,我想SUM(FC.Debito)
案例FC.Troco
为 1(true)。
我认为你想要条件聚合:
SELECT MAX(P.Descricao) AS Name, SUM(FC.Credito) AS Sales,
SUM(CASE WHEN FC.Troco = 1 THEN FC.Debito ELSE 0 END) AS Purchases
FROM FluxoCaixa FC INNER JOIN
Pagamento P
ON Fc.ID_Pagamento = P.Pagamento;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.