Ищу эквивалент PHP или MySQL для функции COLUMN_ADD MariaDB

#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'