SQL SUM 和 DISTINCT 两列

SQL SUM and DISTINCT two columns

我有一个 table 称为点,基于整体的不同值,我想对有效条目求和。

我有这个:

valid_entries Codes
1 768
2 1224
2 1224
1 512
1 512

基于不同的值我会:

valid_entries codes
1 768
2 1224
1 512

我想得到 valid_entries 的总和,即 4。

我试过这个,我有 PostgreSQL 11.5 版本,我是新手。如果有人可以提供帮助,我将不胜感激。

SELECT sum(valid_entries) FROM 
(SELECT count(distinct(codes)) FROM points WHERE  participant_id='123') t

先过滤掉与DISTINCT重复的行,然后聚合:

SELECT SUM(valid_entries) total
FROM (SELECT DISTINCT valid_entries, Codes FROM points WHERE participant_id='123') t;

参见demo