sql查询到量列的总和

时间:2015-03-23 12:54:53

标签: php mysql

我的表格有如下数据......

现在我的下表中有18行......但收据号是相同的。

但我只需要显示唯一收据金额的总和。

PLZ帮我制作SQL查询。

SELECT SUM(Amount) FROM `receipt_entry` group by receipt_no,amount


receipt_no              amount
    10                    100
    10                    100
    10                    100
    10                    100
    10                    100
    10                    100

    11                    100
    11                    100
    11                    100
    11                    100
    11                    100
    11                    100

    12                    100
    12                    100
    12                    100
    12                    100
    12                    100
    12                    100

  SUM of Amount        = 300

FOR以上前 - 我需要总和如下数量= 100 + 100 + 100 = 300

2 个答案:

答案 0 :(得分:1)

distinct数据之前使用sum子句。

这样做:

$query = "SELECT sum(amount) AS total_amount, receipt_no 
          FROM receipt_entry 
          GROUP BY receipt_no"
  

您可以从here

获取有关DISTINCT的更多详细信息

让我知道更多帮助!!

答案 1 :(得分:0)

您可以查看此查询:

SELECT SUM (A.AmountTotal) FROM  (
    SELECT SUM(DISTINCT amount) AS AmountTotal, receipt_no 
    FROM receipt_entry
    GROUP BY receipt_no ) A

此块返回结果:

SELECT SUM(DISTINCT amount) AS AmountTotal, receipt_no 
FROM receipt_entry
GROUP BY receipt_no

AmountTotal     receipt_no
-----------     ----------
100             10
100             11
100             12

再次添加块的总和,给出结果。

  

更新:

SELECT SUM(`AmountTotal`) FROM  (
    SELECT SUM(DISTINCT `amount`) AS AmountTotal, `receipt_no` 
    FROM `receipt_entry`
    GROUP BY `receipt_no`) AS T1;

您可以查看此查询。

此方案的工作示例:SQL Fiddle