Mysql abfrage in Postgresql umwandeln

Hallo bin grade dabei einen MySql server in einen Postgresql umzuwandeln.
Im Moment versuche ich die Sql-abfragen so umzuwandeln, dass sie in Postgresql funktionieren.
Bin dabei auf folgendes problem gestoßen:

Mysql:
select sum(feld=0), sum(feld=1), sum(feld=2) from table

(Sum ist in diesem fall wie ein count, diese 3 Abfragen würden der oberen entsprechen:
Select count(feld) from table where feld=0
Select count(feld) from table where feld=1
Select count(feld) from table where feld=2
)

Ich will also zählen, wie oft welcher Wert in dem Feld steht.
Wenn ich den gleichen Befehl in Postgresql abschicke, funktioniert er zwar, aber postgresql scheint das =0,=1,=2 völlig zu ignorieren.

Ich hoffe jemand kennt eine Möglichkeit dieses Problem auf eine ähnlich leichte art wie in mysql (möglichst in einer einzigen abfrage) zu lösen

Du suchst CASE.

test=*# select sum(case when wert=1 then 1 else 0 end) as count_1, sum(case when wert=2 then 1 else 0 end) as count_2 from foo;
count_1 | count_2
---------±--------
3 | 2
(1 row)

test=*# select * from foo;
wert

1
1
1
2
2
3
(6 rows)

Ja genau sowas hab ich gesucht :smiley:
Vielen Dank!!