#mysql #mariadb
#mysql #mariadb
Вопрос:
Я думаю, что заголовок довольно понятен, но просто для ясности, я перехожу с MariaDB на Mysql и пытаюсь найти решение для переписывания этого запроса для работы с MySQL.
UPDATE `categories` SET attrib=COLUMN_ADD(attrib, '2','48'), updated=NOW() WHERE name = 'category_name'
Я пробовал так:
UPDATE `categories` SET attrib=CONCAT(attrib, '2','48'), updated=NOW() WHERE name = 'category_name'
Но он просто объединяет значения 2 и 48 в 248, и мне нужно, чтобы фактическое значение было строкой json, и каждый раз, когда я запускаю запрос, он должен вставлять новые данные в эту строку json.
Ответ №1:
Для всех, кому интересно, я исправил это, используя JSON_SET вместо COLUMN_ADD
UPDATE `categories` SET attrib=JSON_SET(attrib, '$."2"', "48"), updated=NOW() WHERE name = 'category_name'