2012-04-01 3 views
0

Мне нужен шаблон MySQL для соответствия числу, за которым следует знак вопроса. Мне нужно что-то вроде ... like '% [0-9]?%' , но я понятия не имею, как создать это регулярное выражение.Соответствие шаблону MySql

http://dev.mysql.com/doc/refman/5.0/en/pattern-matching.html не помогает.

Спасибо!

+0

Почему это не помогает? –

+0

У меня есть столбец типа текста. Я должен найти в нем какие-то записи. Я пробовал SELECT * FROM table WHERE column like '% [0-9]?%'; SELECT * FROM table WHERE column like '%^[0-9]? $%' И т. Д. ... –

ответ

1

Я предполагаю, что вы ищете что-то вроде этого:

select * from table 
where field rlike '[0-9]\\?' 

Помните, чтобы избежать знак вопроса. В противном случае это сделает число необязательным.

Source.

+1

Спасибо. Это прекрасно работает. Я также рассмотрю синтаксис rlike. –

+0

Добро пожаловать Дамян :) –

4

вы могли бы попробовать это:

SELECT * FROM YourTable WHERE YourField REGEXP '[0-9]\\?' 

Это будет возвращать строки, где YourField содержит ряд с последующим ? где-нибудь в значении.

Если вы хотите, чтобы это было только в том случае, если все поле является числом, за которым следует ?. То есть 9?, то вы могли бы использовать это регулярное выражение вместо:

^[0-9]\\?$ 
+0

Это не исчезает? -sign –

+0

@ ДамянСтанчев ваше право, я полностью забыл об экранировании, я исправил его. – Robbie

Смежные вопросы