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

JSON_OBJECT() – Създайте JSON обект от списък с двойки ключ/стойност в MySQL

В MySQL можете да използвате JSON_OBJECT() функция за създаване на JSON обект от списък с двойки ключ/стойност. Вие предоставяте всяка двойка ключ/стойност като два отделни аргумента. Всяка двойка става двойка ключ/стойност в получения JSON обект.

Трябва да предоставите четен брой аргументи (в противен случай ще имате непълна двойка някъде в списъка си с аргументи).

Функцията също така приема празен списък (т.е. не предоставяте аргументи). В този случай ще получите празен обект.

Синтаксис

Синтаксисът е така:

JSON_OBJECT([key, val[, key, val] ...])

Квадратните скоби показват незадължителен аргумент. Следователно е напълно валидно да използвате тази функция, без да предавате никакви аргументи.

Пример 1 – Основна употреба

Ето пример за демонстрация.

SELECT JSON_OBJECT('City', 'Cairns', 'Population', 139693) AS 'Result';

Резултат:

+------------------------------------------+
| Result                                   |
+------------------------------------------+
| {"City": "Cairns", "Population": 139693} |
+------------------------------------------+

Пример 2 – Празни низове

Празните низове са валидни.

SELECT JSON_OBJECT('City', '', 'Population', 139693) AS 'Result';

Резултат:

+------------------------------------+
| Result                             |
+------------------------------------+
| {"City": "", "Population": 139693} |
+------------------------------------+

Това важи и за ключа:

SELECT JSON_OBJECT('', 'Cairns', 'Population', 139693) AS 'Result';

Резултат:

+--------------------------------------+
| Result                               |
+--------------------------------------+
| {"": "Cairns", "Population": 139693} |
+--------------------------------------+

Пример 3 – Празни списъци

Празните списъци също са валидни. Това ще доведе до празен JSON обект.

SELECT JSON_OBJECT() AS 'Result';

Резултат:

+--------+
| Result |
+--------+
| {}     |
+--------+

Пример 4 – NULL стойности

Стойността част от двойката ключ/стойност може да съдържа стойности NULL.

SELECT JSON_OBJECT('City', 'Cairns', 'Population', NULL) AS 'Result';

Резултат:

+----------------------------------------+
| Result                                 |
+----------------------------------------+
| {"City": "Cairns", "Population": null} |
+----------------------------------------+

Но ключ част не може да съдържа NULL стойности. Ако ключът има стойност NULL, ще възникне грешка.

SELECT JSON_OBJECT('City', 'Cairns', NULL, 139693) AS 'Result';

Резултат:

ERROR 3158 (22032): JSON documents may not contain NULL member names.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Използване на Python и MySQL в ETL процеса:SQLAlchemy

  2. Инсталирайте MySQL на Ubuntu 14.04

  3. Spring Boot CRUD Пример с MySQL

  4. Може ли да се използва число за именуване на колона на MySQL таблица?

  5. Как да конвертирате MySQL време