Хочу найти все логины которые начинаются на D или на V - MySQL
Формулировка задачи:
Хочу найти все логины, которые начинаются на D или на V, почему такой запрос ничего не выдаёт?
а вот такой выдаёт, которые начинаются на D
SELECT `login` FROM `user` WHERE `login` LIKE '[DV]%'
SELECT `login` FROM `user` WHERE `login` LIKE 'D%'
Решение задачи: «Хочу найти все логины которые начинаются на D или на V»
textual
Листинг программы
WHERE `login` REGEXP '^[DV]'
Объяснение кода листинга программы
В данном коде используется оператор SQL WHERE для фильтрации результатов запроса. Условие, которое применяется в этом операторе, это REGEXP (регулярное выражение) с шаблоном '^[DV]'.
Вот разбор этого регулярного выражения:
^- это символ начала строки, он обозначает, что сопоставление должно начинаться с начала строки.[DV]- это символьный класс, который соответствует любому символу, который является 'D' или 'V'. Таким образом, это регулярное выражение будет соответствовать строкам, которые начинаются с 'D' или 'V'. Вот список действий в данном коде:- Фильтрация результатов запроса с помощью оператора
WHERE. - Применение регулярного выражения '^[DV]' для определения, начинается ли строка с 'D' или 'V'.
Поскольку в условии
WHEREиспользуется регулярное выражение, это означает, что в результате будут возвращены только те строки, которые соответствуют шаблону '^[DV]'.