Задать вопрос
@codercat

Как обновить 1 конкретное значение в json поле mysql 5.7?

В mysql 5.7 добавили поддержку полей с типом json, там есть множество функций для работы, но я никак не могу найти, как обновить что-то в самом json'e без перезаписи всего поля.

Например, есть значение с вот таким json:
{
	"key1" : "value1",
	"key2": {
		"key1": "valu1"
	}
}


Как будет выглядеть запрос обновления key1 и key2.key1? Если такое возможно, конечно.
  • Вопрос задан
  • 362 просмотра
Подписаться 1 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    Java-разработчик
    8 месяцев
    Далее
  • Shultais Education
    Основы SQL
    3 месяца
    Далее
  • OTUS
    PHP Developer. Professional
    5 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
JSON_REPLACE(`json_value`, '$.key1', 'newValue1', '$.key2.key1', 'newValue2')
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@codercat Автор вопроса
Пока что я вижу только одно решение -- получение записи, замена значения на новое и полная перезапись.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы