Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » MySQL » Как сформировать запрос выборки по значению допполя?

Как сформировать запрос выборки по значению допполя?


     19.02.2019    sql запрос, sql    Все вопросы » MySQL    1155

вопрос
Подскажите, пожалуйста, какое условие прописать в sql запросе, что бы вывести по каким-то значениям конкретного допполя? К примеру, есть допполе год, если делать выборку по году так
WHERE xfields REGEXP '2018|2019'

то выводит все новости где в любых допполях встречается 2018 или 2019, а не только в допполе год

Ответа пока нет


6 комментариев

LazyDev
PHP-developer

LazyDev - 19 февраля 2019 18:59 -

(xfields LIKE '%year|2018%' OR xfields LIKE '%year|2019%')

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

morefilms
Юзер

morefilms - 18 мая 2019 22:00 -

А если нужно сделать выборку где значение в допполе внутри текста а не в начале?
К примеру допполе страна может иметь вид "США, Россия, Украина", или "Россия, Казахстан"
Нужно выбрать те, где "Россия"
xfields LIKE '%country|Россия%' покажет только второй вариант

LazyDev
PHP-developer

LazyDev - 18 мая 2019 22:39 -

morefilms,
xfields LIKE '%country|%Россия%'

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

morefilms
Юзер

morefilms - 18 мая 2019 22:53 -

LazyDev,
правильно ли я понимаю что такая выборка будет ограничена первым вхождением "||", т.е. концом допполя country? и если текст "Россия" встречается в других допполях, то он уже не попадет в выборку?
+ хотя проверил - не ограничивается, т.е. ищет и фильмы где в допполе country нет вхождения Россия, но оно встречается в следующих допполях
как можна ограничить конец допполя? что-то типа как в нотепаде ".+?\|\|"

LazyDev
PHP-developer

LazyDev - 18 мая 2019 23:10 -

Нет. Что бы было ограничение нужно делать по другому
SUBSTRING_INDEX(SUBSTRING_INDEX(xfields, 'country|', -1), '||', 1) LIKE '%Россия%'

Мой блог: LazyDev.pro

Помогаю с решением проблем на платной основе.

morefilms
Юзер

morefilms - 18 мая 2019 23:19 -

LazyDev,
замечательно, то что нужно, огромное спасибо

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

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

наверх