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

конвертирайте стойността на колона jsonb в множество колони в PostgreSQL

Това е просто в 9.4 (използвани функции LATERAL join и jsonb):

    postgres=# SELECT * 
                  FROM sample, jsonb_to_record(jsonb, true) AS x(a text, b text);
     id |            jsonb             |    date     |  a   |   b    
    ----+------------------------------+-------------+------+--------
      1 | {"a": "a", "b": "b"}         | 2014-01-06  | a    | b
      2 | {"a": "a", "b": "b"}         | 2014-01-06  | a    | b
      3 | {"a": "Ahoj", "b": "Nazdar"} | 2014-01-06  | Ahoj | Nazdar
    (3 rows)

точен резултат:

postgres=# SELECT id, a, b, date 
               FROM sample, jsonb_to_record(jsonb, true) AS x(a text, b text);
 id |  a   |   b    |    date    
----+------+--------+------------
  1 | a    | b      | 2014-01-06
  2 | a    | b      | 2014-01-06
  3 | Ahoj | Nazdar | 2014-01-06
(3 rows)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да изпълня необработен SQL в миграция на django

  2. Hibernate актуализира едно към много каскадно

  3. Променете групата за защита на екземпляра на базата данни на AWS RDS

  4. Инсталирайте и се свържете с PostgreSQL 10 на Ubuntu 16.04

  5. Как точно работи кръгла функция в postgresql?