Задать вопрос
@mihas18

Как в mysql автоматически обрезать текстовое поле по условию?

Есть исходные строки ("news-copy", "kontakty-copy"). При наличии вхождения в строку ("news-copy") подстроки "-copy" - необходимо строку ("news-copy") обрезать до "news".
  • Вопрос задан
  • 2391 просмотр
Подписаться 1 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 3
falsebyte
@falsebyte
select right('news-copy',4)

уупс, это он справа возьмет 4 символа вам нужно использовать left, условие надеюсь допишите?
Ответ написан
Комментировать
Immortal_pony
@Immortal_pony Куратор тега MySQL
SELECT 
		CASE 
			WHEN (LOCATE('-news', `str`) > 0) THEN 
				LEFT (`str`, LOCATE('-news', `str`)-1)
			ELSE 
				`str`
		END AS
	'str'
Ответ написан
Комментировать
SUBSTRING_INDEX('news-copy', '-', 1); -> news
SUBSTRING_INDEX('kontakty-copy', '-', 1); -> kontakty

IF(SUBSTRING_INDEX('news-copy', '-', 1) = 'news', SUBSTRING_INDEX('news-copy', '-', 1), 'kontakty-copy')
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы