2015-02-19 3 views
1

Пытается решить эту проблему в инструкции по обновлению. Каждое поле имеет такое же количество символов и формат, что и «abc-def-ghi»Заменить первые несколько символов поля в заявлении об обновлении

Как заменить часть «abc-def» на «xxx-xxx», если поле содержит «abc»?

+1

посмотрите на [подстроки] (https://msdn.microsoft.com /en-us/library/ms187748.aspx). –

ответ

0

Сочетание substr с и конкатенации строк, следует сделать трюк:

UPDATE my_table 
SET col1 = CONCAT('xxx-xxx-' , SUBSTR(col1, 9)) 
WHERE col1 LIKE '%abc%' 
0

попробовать это:

IF(col LIKE '%abc%', REPLACE(col, 'abc-def', 'xxx-xxx'), col) 
+0

'abc-def' является динамическим – user406151

+0

@ user406151: Но у вас есть доступ к нему в переменной, не так ли? Так что просто подключите его. – zimdanen

Смежные вопросы