SQL查询用于计算总数而不考虑重复的行

时间:2018-11-01 07:13:31

标签: sql

我有一张表需要计算总金额,但是有些行会重复出现,所以我需要避免这些行。

例如

Column1        Column2
   1              10
   2              20
   3              30
   1              10
   2              20
   3              30

问题是我不知道将这些值重复多少次。

怎么可能?

3 个答案:

答案 0 :(得分:2)

  • 在内部查询中使用distinct子句,以避免重复值
  • 然后子查询以获取column2的总数

像下面一样-

    select sum(column2) as totalamount
    from
    (
    select distinct column1, column2
    from tablename
    ) a

答案 1 :(得分:0)

您可以尝试:

SELECT
    s.column1,
    sum(s.column2)
FROM
    (
        SELECT DISTINCT
            INNER.column1,
            INNER.coulmn2
        FROM <table> INNER
    ) s
GROUP BY s.column1;

此子查询应为您提供帮助。

答案 2 :(得分:0)

可以做到

Select column1,avg(column2)
from tablename
group by column1