sql >> Database teknologi >  >> RDS >> PostgreSQL

Hvordan transponeres kolonner og rækker i PostgreSQL (dvs. hvordan skifter jeg rækker og kolonner)?

Du kan nemt gøre dette med en aggregeret funktion og en CASE erklæring:

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

Se SQL Fiddle with Demo



  1. Hvordan ændres database_url på heroku?

  2. SQLSTATE[HY000] [2002] Ingen sådan fil eller mappe

  3. PL/pgSQL kontrollerer om der findes en række

  4. Hurtigere måde at slette matchende rækker på?