我想知道我用什么请求显示了不同客户端的金额之和,这些客户端没有重复sum函数,而且是不同的。
我使用的 :
SELECT DISTINCT id_721z, SUM(montant) AS somme_montant
FROM `roue_ventes_cb`
WHERE `date_transaction` between '2015/01/01' and '2015/01/21';但结果显示不正确。我有这样的数据:
id_721z系列单体
1 | 15
1 | 15
2 | 22
2 | 22
2 | 22我想显示total_montant = 37,但不是
id_721z系列单体
1 | 30
2 | 66发布于 2015-01-21 11:13:39
SELECT SUM(montant) AS somme_montant
FROM (
SELECT DISTINCT id_721z, montant
FROM `roue_ventes_cb`
WHERE `date_transaction` between '2015/01/01' and '2015/01/21'
) AS t发布于 2015-01-21 11:52:34
这将把所有不同的单体相加。但是,如果两个if具有相同的值,它将只计算一次。
SELECT id_721z, SUM(DISTINCT montant) AS somme_montant
FROM `roue_ventes_cb`
WHERE `date_transaction` between '2015/01/01' and '2015/01/21';所以无论如何,我都会更喜欢米洛斯的答案。这是更安全和不安全的将有一个性能的罚款无论如何。
https://stackoverflow.com/questions/28065731
复制相似问题