PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Postgres JSONb do XML z tag_name i tag_value

Opierając się na rozwiązaniu @Georges Martin, nie użyłbym łączenia bocznego i klauzuli grupującej, ale raczej zagnieżdżonego podzapytania:

SELECT XMLELEMENT(
  NAME "Company", 
  XMLATTRIBUTES(id AS id, field1 AS field), 
  (SELECT XMLAGG(
    XMLELEMENT(
      NAME "companyTag", 
      XMLATTRIBUTES(
        attr.key AS "tagName", 
        attr.value AS "tagValue"
      )
    )
  ) FROM JSONB_EACH_TEXT(attributes) AS attr)
) FROM comp_emp;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. podziel pojedynczy wiersz na wiele wierszy w SQL

  2. Składnia Postgresql regexp_matches nie działa zgodnie z oczekiwaniami

  3. Django :jak korzystać z wielu baz danych?

  4. Znak z kodowaniem UTF8 nie ma odpowiednika w WIN1252

  5. Wstaw dane do tabel połączonych kluczem obcym