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

Verwandeln Sie den eindeutigen Wert von Spalten in Zeilen postgres

Sie können die bedingte Aggregation verwenden:

select ad_id,
       max(case when name = 'name' then valueofname end) as name,
       max(case when name = 'age' then valueofname end) as age,
       max(case when name = 'birthday' then valueofname end) as birthday,
       max(case when name = 'job' then valueofname end) as job
from t
group by ad_id;

In SQL Server können Sie etwas Ähnliches auch mit pivot machen .