SQL запрос чтобы удалить только последний слеш в записи
В одном из столбцов в таблице базы данных мне нужно удалить последний символ строки, если это слеш '/'. То есть если последний символ СЛЕШ - удаляем его, если НЕ СЛЕШ - пропускаем.
В данном столбце вот такие записи:
/detskie-igrushki/
/podarki/dlya-nego/
/golovolomki/
/kak-oformit-zakaz.html
/uk/podarki/dlya-shefa/
и т.д.
То есть символ СЛЕШ, может несколько раз встречаться в одной записи, а удалить нужно ТОЛЬКО слеш в КОНЦЕ, если он есть.
Запрос НАЙТИ и ЗАМЕНИТЬ, вот такой - UPDATE cs_seo_redirects SET dest = REPLACE( dest, '/', '');
удалит все слеши, а не только последний. А нужно удалить слеш только в конце. Подскажите, пожалуйста, есть ли возможность с помощью SQL запроса удалить слеш только в конце?
Ответы (1 шт):
Вариант для MySQL. Необходимы строки находятся по регулярному выражению.
UPDATE table_name
SET col_name = SUBSTRING(col_name, 1, LENGTH(col_name) - 1)
WHERE col_name REGEXP '.*\/$'