MySQL REGEXP для чисел, которые начинаются с
Мне нужно написать запрос с помощью MySQL REGEXP, который найдет мне строки, которые имеют определенный столбец, начинающийся с 11 или 12 или etc. Я знаю,что могу использовать LIKE или LEFT (####, 2), но хотел бы использовать опцию REGEXP. Мои данные хранятся как 110001, 122122, 130013a и т. д.
изменить 1:
чтобы сделать его более ясным, я хотел бы выразить
SELECT * FROM table WHERE column LIKE '11%' or column LIKE '12%' or column LIKE '30%'"
С REGEXP
спасибо!
1 ответов
чтобы соответствовать строкам, которые начинаются с любых двух цифр, вы можете использовать:
SELECT *
FROM yourtable
WHERE yourcolumn REGEXP '^[0-9][0-9]';
если вы хотите разрешить строки, начинающиеся с 11
, 12
или 30
тогда вы можете использовать это:
SELECT *
FROM yourtable
WHERE yourcolumn REGEXP '^(11|12|30)';
Это не сможет использовать индекс в столбце, поэтому он может быть медленнее, чем при использовании LIKE.