Правильная команда будет:
SELECT SUM(value)
FROM (SELECT DISTINCT ON (item) *
FROM TABLE
ORDER BY item
) s ;
Значение ORDER BY
важно при использовании DISTINCT ON
.
Я не могу придумать способ сделать это без подзапроса. Как правило, такие данные будут построены из другого запроса. Суммирование может быть сделано лучше по базовым таблицам, а не по результату. Подсказка: данные не нормализованы.