sql >> Databáze >  >> RDS >> Oracle

Zobrazit zřetězené hodnoty v dotazu SQL

Můžete použít seznam LISTAGG pomocí DECODE :

SELECT NAME, NO, 
       LISTAGG(DECODE(RODZ_ST,'JEW',IDENT_ST,NULL), ',') WITHIN GROUP (ORDER BY t.ID DESC, RODZ_ST) AS JEWS,
       LISTAGG(DECODE(RODZ_ST,'DZE',IDENT_ST,NULL), ',') WITHIN GROUP (ORDER BY t.ID , RODZ_ST) AS DZE,
       LISTAGG(DECODE(RODZ_ST,'OBR',IDENT_ST,NULL), ',') WITHIN GROUP (ORDER BY t.ID , RODZ_ST) AS OBR
  FROM ORDERS o
   LEFT JOIN TYPES t ON t.ID_PR = o.ID_ZM
  GROUP BY NAME, NO;

Ukázka SQL Fiddle




  1. PHP kód pro převod dotazu MySQL na CSV

  2. Zobrazit výsledek nejbližší aktuálnímu datu a času (MySQL a PHP)

  3. MySQL pivot řádek do dynamického počtu sloupců

  4. BOOLEAN nebo TINYINT zmatek