sql >> Database >  >> RDS >> PostgreSQL

Postgres:converteer enkele rij naar meerdere rijen (unpivot)

Een enkele SELECT met een LATERAL deelnemen aan een VALUES expressie doet het werk:

SELECT p.id, v.*
FROM   price_list p
     , LATERAL (
   VALUES
      ('type_a', p.price_type_a)
    , ('type_b', p.price_type_b)
    , ('type_c', p.price_type_c)
   ) v (price_type, price);

Gerelateerd:

  • Een rij omzetten in meerdere rijen met minder kolommen
  • SELECTEER DISTINCT op meerdere kolommen


  1. Een een-op-twee niet-null-beperking toevoegen in postgresql

  2. Maak een lijst van alle indexnamen, kolomnamen en de tabelnaam van een PostgreSQL-database

  3. Wat is het maximale aantal kolommen in een PostgreSQL-selectiequery?

  4. Inzicht in SQL Server-beveiligingsfunctie HAS_Permis_BY_Name en zijn gebruiksgevallen