#mysql
Вопрос:
Я переключаюсь с сервера Windows на сервер Linux, и чувствительность к регистру — это небольшая проблема в базе данных. Для большинства полей я только что смог использовать следующую команду:
UPDATE images_T SET image_path = LOWER(image_path)
Однако для одного из полей мне нужно изменить только часть JPG на jpg и сохранить все остальные заглавные буквы. Например. imagesT12435.JPG Я хочу перейти на imagesT12435.jpg поэтому я хочу сохранить капитал Т. Я пытался использовать ПРАВИЛЬНУЮ функцию для этого, но мне не очень повезло.
Ответ №1:
UPDATE images_T SET image_path = REPLACE(image_path, '.JPG', '.jpg')
С LEFT Right
(работает с любым расширением):
UPDATE images_T SET image_path = CONCAT(
LEFT(image_path, length(image_path - 3))
, lower(RIGHT(image_path, 3))
)
Комментарии:
1. спасибо, работает как заклинание… Я знал, что это будет что-то простое.
Ответ №2:
Вы можете попробовать это
UPDATE images_T set image_path = replace(image_path,'.JPG','.jpg');
Ответ №3:
Попробуйте ЗАМЕНИТЬ