我正在尝试将一堆值相加但是有一个包含重复条目的表。使用distinct和sum与group最后将所有值相加而不是每个UserID中只有一个。
UserID | Value
1 | 200
1 | 200
1 | 200
2 | 500
2 | 500
2 | 500
3 | 800
3 | 800
4 | 200
4 | 200
我希望输出如下:
NumberOfUsers | Total
4 | 1700
答案 0 :(得分:6)
首先执行DISTINCT
,然后执行SUM
:
SELECT Count(UserID) AS NumberOfUsers, SUM(Value) AS Total
FROM
(SELECT DISTINCT UserID, Value
FROM Table
) AS subqry
SQLFiddle示例here。
答案 1 :(得分:0)
在w3上查看这篇文章!我认为这就是你要找的东西=]! http://www.w3schools.com/sql/sql_groupby.asp