Задавайте вопросы, мы ответим
Вы не зашли.
Все доброго времени суток, в большинстве постах имеются картинки с текстом <img class="kartinka" alt="Spec" src="ссылка на картинку" width="280" height="300" />. В данный момент нужно удалить код картинок в постах, где они есть, а текст оставить, какой нужен запрос в mysql что бы удалить ( ОТ <img ДО height="300" /> ) включительно. Пробовал вот такой вариант
Неактивен
комбинацией locate и substring
определяете позицию <img и последующего /> и вырезаете этот кусок
одним update будет удалятся по одной (самой первой) картинке в каждом посте
т.е. нужно будет несколько раз выполнить update
http://sqlinfo.ru/forum/viewtopic.php?id=591
Неактивен
я новичок в mysql прочитал сейчас про эти функции
но как я понял работают с повторяющими словами, а у меня получается в каждом <img /> URL разный
или я не правильно понял?
Отредактированно VARjet (19.04.2017 19:24:34)
Неактивен
Неактивен
VARjet написал:
я новичок в mysql прочитал сейчас про эти функции
но как я понял работают с повторяющими словами, а у меня получается в каждом <img /> URL разный
или я не правильно понял?
урл разный, но вырезаете вы то что находится между "<img" и "/>", а они всегда одинаковые.
VARjet написал:
set @a = '<img';
select locate(' ', @a);
select substring(@a, 7, locate(' ', @a));
UPDATE `posts` SET `column` = substring(`column`, 7, locate(' ', `column`));
я как понял вот так должно выглядеть?
нет, посмотрите всё-таки описания функций в документации
https://dev.mysql.com/doc/refman/5.7/en … tions.html
Неактивен
может буду навязчив, но можете показать пример, удаления после и до?
Неактивен
запрос громоздкий будет, лень писать
попробуйте решать задачу последовательно:
сначала определить позицию первого "<img" -- locate
вырезать то что до -- substring
затем определить позицию ближайшего "/>" -- locate
вырезать то что после -- substring
склеить первую и вторую часть -- concat
похожий пример, только с делением по пробелу как раз и разобран по ссылке
Неактивен
логику понял, будем пробовать! Спасибо.
Отредактированно VARjet (19.04.2017 20:50:20)
Неактивен
а вот такой метот подойдёт?
Неактивен
практика - критерий истины
проще выполнить и один раз увидеть, чем 100 услышать
Неактивен
Работает
Неактивен