Конкатенация исходного значения со значением запроса в MySQL

Я пытаюсь что-то в MySQL, что я делаю в JavaScript / PHP все время. Мне нужно объединить значение поля в MySQL со значением, которое передается в запрос из PHP. Например, скажем, у меня есть поле с именем favourites со значением 27 и у меня есть этот запрос:

UPDATE useraccs SET favourites = favourites + ',30' WHERE id='10'

Мое желаемое новое значение для favourites было бы 27,30, но я получаю 57где явно SQL добавляет их численно. Я установил тип данных для этого столбца как TEXT и надеялся, что это заставит SQL все время обрабатывать его как строку, но, похоже, это не так.

В своем исследовании я прочитал о функции CONCAT () и попробовал это:

UPDATE useraccs SET favourites = CONCAT(favourites,',30') WHERE id='10'

Это приводит к неудачному запросу. Логика кажется правильной, но это, очевидно, не то, как эта функция предназначена для использования.

Я признаю, что в теории, я мог бы просто взять первоначальную ценность favourites и объединить его с новым значением в самом PHP, а затем отправить его в MySQL, но я чувствую, что ДОЛЖЕН быть способ сделать это в одном запросе … если я ошибаюсь, так и будет, но я ‘ Я уверен, что должен быть способ.

-1

Решение

Используйте следующее для создания ’27, 30 ‘:

КОНВЕРТ (избранное, символ) + ‘, 30’

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector