sql >> Databáze >  >> RDS >> PostgreSQL

Nesprávné uvozovky při použití crosstab() v PostgreSQL

Chcete-li se vyhnout nejasnostem ohledně toho, jak uniknout jednoduchým uvozovkám a obecně zjednodušit syntaxi, použijte dolar-citovat pro řetězec dotazu:

SELECT *
FROM   crosstab($$
    SELECT person_id, item_name, item_value
    FROM   t1 
    WHERE  person_id = 1
    AND    item_name IN ('NAME', 'GENDER')
    $$) AS virtual_table (person_id int, name varchar, gender varchar)

A měli byste přidat ORDER BY na váš řetězec dotazu. Cituji manuál k modulu tablefunc :

Další podrobnosti:



  1. Vytvořte spouštěč pro smazání řádků, které jsou starší než 90 dní

  2. Zobrazit řetězec z raise_application_error v programu Java

  3. Převeďte hodnotu z řetězcové reprezentace v základu N na číselnou

  4. Jak přidat AM/PM k časové hodnotě na SQL Server (T-SQL)