PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Postgres JSONb към XML с tag_name и tag_value

Въз основа на решението на @Georges Martin, не бих използвал странично свързване и клауза за групиране, а по-скоро просто вложена подзаявка:

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. SQLAlchemy Core групово вмъкване бавно

  2. Масивни вложки с pg-обещание

  3. pg_dump с user dont superadmin и големи обекти

  4. Избройте всички последователности в Postgres db 8.1 с SQL

  5. Избирането от pg_catalog.pg_settings се забави след актуализиране до PostgreSQL 12 (windows)