- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Как снизить ДРР до 4,38% и повысить продажи с помощью VK Рекламы
Для интернет-магазина инженерных систем
Мария Лосева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Доброго времени суток.
Только начинаю изучать ПХП, поэтому прошу сильно тапками не закидывать.
Задача такая:
Выбрать из таблицы все записи, которые начинаются, допустим, с букв от "a" до "f".
Пытаюсь вывести с помощью запроса
SELECT `поле` FROM `таблица` WHERE `поле` LIKE '[a-f]%';
Не работает и все! Выдает, что нет данных подходящих условию.
Если вывести любую букву из заданного диапазона отдельно
SELECT `поле` FROM `таблица` WHERE `поле` LIKE 'd%';
то все отлично работает.
Нашел рабочее решение по выводу через REGEXP
SELECT `поле` FROM `таблица` WHERE `поле` REGEXP '(^[a-f])';
Но интересует, почему не выводит через LIKE? И есть ли способы еще каким-нибудь образом сделать такую выборку?
LIKE - это простое ставнение строк посимвольно с двумя возможными спецсимволами - % и _. Если нужны более сложные условия - то как вы уже выяснили надо использовать регулярки. https://dev.mysql.com/doc/refman/8.0/en/pattern-matching.html
SELECT `поле` FROM `таблица` WHERE `поле` LIKE 'a%' or `поле` LIKE 'b%' or `поле` LIKE 'c%' or `поле` LIKE 'd%' or `поле` LIKE 'e%' or `поле` LIKE 'f%'
зы я не программист
Не работает и все!
Почему решили что LIKE - это REGEXPR :)
LIKE максимум обозначает "любой" символ в конце и(или) начале через %
есть ли способы еще каким-нибудь образом сделать такую выборку?
https://dev.mysql.com/doc/refman/5.6/en/regexp.html