MySQL обновить часть целой строки? - PullRequest
0 голосов
/ 06 декабря 2018

Я храню числовые переменные в строке.Как: 165,37,0,0,21

Теперь мне нужно изменить только последнюю часть, но остальное оставить прежним.(в моем примере мне нужно изменить 21 на 0)

У вас есть идеи?

Ответы [ 2 ]

0 голосов
/ 06 декабря 2018

Я рекомендую использовать регулярное выражение для этого, приведенный ниже reg ex найдет число в конце строки, включая последнюю запятую, и заменит его на ', 0'

UPDATE table SET column1 = REGEXP_REPLACE(column1 , ',[0-9]*$', ',0')
0 голосов
/ 06 декабря 2018

ЗАМЕНА была бы наиболее идеальной в этом случае:

UPDATE tbl_name 
SET 
field_name = REPLACE(field_name,
    string_to_find,  -- in your case 21
    string_to_replace  -- in your case 0 ) 
WHERE
<place condition if any e.g. the key to that record>;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...