Mysql Regex Problem - PullRequest
       2

Mysql Regex Problem

0 голосов
/ 30 августа 2010

Я хочу найти только те строки, столбец которых 'col' c не содержит символов из a-1 Так что я не знаю, как написать сценарий. Мне удалось написать сценарий, который противоположен этому. Заранее спасибо.

select * 
  from tbl_comment c 
 where c.`message` regexp '{a-z}';

Мне нужен сценарий, который будет противоположен этому. Я пытался "не регулярное выражение", но это не работает.

Ответы [ 2 ]

2 голосов
/ 30 августа 2010

Вам нужны квадратные скобки, а не фигурные скобки:

SELECT *
FROM tbl_comment c
WHERE c.`message` NOT REGEXP '[a-z]'

Вы также должны быть осторожны, что вы имеете в виду.Вышеуказанное соответствует любой строке, которая не содержит никаких букв в az.Если вместо этого вы хотите сопоставить строки, которые содержат хотя бы один символ не в az, тогда вам нужно это:

SELECT *
FROM tbl_comment c
WHERE c.`message` REGEXP '[^a-z]'
1 голос
/ 30 августа 2010

Попробуйте:

select * from tbl_comment c where c.message regexp '[^A-Z]'

или:

select * from tbl_comment c where c.message not regexp '[A-Z]'

Спецификаторы класса символов должны быть в квадратных скобках .

(я предполагаю, что вы имели в виду "AZ", а не "A-1")

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...