PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Wie transponiere ich Spalten und Zeilen in PostgreSQL (d. h. wie vertausche ich Zeilen und Spalten)?

Das geht ganz einfach mit einer Aggregatfunktion und einem CASE Aussage:

select year,
  sum(case when place = 'U.S.' then price else 0 end) "U.S.",
  sum(case when place = 'U.K.' then price else 0 end) "U.K."
from yourtable
group by year

Siehe SQL Fiddle mit Demo