Как вставить JSON в существующий JSON в MySQL для столбца JSON? - PullRequest
0 голосов
/ 25 января 2019

Я хочу вставить данные JSON в существующие данные JSON в MySQL через запрос к базе данных.Также, если поле JSON уже существует, оно не должно ничего делать.Например, у меня есть jsonTable, имеющий столбцы id и jsonConfig соответственно, и поле JSON содержит данные для некоторого идентификатора, как показано ниже.

{
  "name": "Baljinder",
  "siblings": {
      "name": "Sukhjinder",
      "age": 29,
      "alive": true
   }
}

Теперь я хочу вставить адресный объект JSON, указанный ниже, в объекте братьев и сестер.

"address": {
      "city": "Melbourne",
      "country": "Australia"
 }

Так что мой конечный результат такой:

{
  "name": "Baljinder",
  "siblings": {
      "name": "Sukhjinder",
      "age": 29,
      "alive": true,
      "address": {
          "city": "Melbourne",
          "country": "Australia"
      }
  }
}

1 Ответ

0 голосов
/ 25 января 2019

Я пытался, и это работает для меня на MySQL 5.7.13

UPDATE jsonTable SET jsonConfig=JSON_INSERT(jsonConfig, "$.siblings.address", JSON_OBJECT('city','Melbourne','country','Australia')) where id = <?>;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...