Sie können dies mit
tunSELECT some_id
, SUM(
CASE
WHEN vote = 'UP'
THEN 1
WHEN vote = 'DOWN'
THEN -1
ELSE 0
END
) as vote_score
FROM votes
GROUP BY some_id
Beachten Sie, dass der bessere Ansatz darin besteht, +1 oder -1 in der Abstimmung zu speichern, dann können Sie einfach Folgendes tun:
SELECT some_id, SUM(vote) as vote_score
FROM votes
GROUP BY some_id
Übrigens, wenn Ihnen meine Formatierung seltsam vorkommt, habe ich sie in http erklärt://bentilly.blogspot.com/2011/02/sql-formatting-style.html .