2014-09-27 1 views
0

У меня есть таблица MySQL со следующими данными:MySQL - регулярное выражение - RLIKE с 1 и без 10

ID | Name 
1 | xy 
4 | dasd 
9 | 422p 
10 | dasös 

и у меня есть следующий запрос, который должен отображать только значение «1 и 4 ", но отображает 1,4,10.

rlike '1|^4'  

любая идея?

+2

Это может быть связано только с вашими примерами данных, но почему вы использовали 'RLIKE' для этого, а не' IN (1,4) '? Если у вас есть более сложные данные о строках, это поможет, если вы разместите более представительный пример. –

+0

Отлично - он отлично работает - спасибо. – Stefan

+0

Мне нужна ваша помощь с помощью следующего кода. Если нет билетов с prio_id 5, он должен быть отображен «в порядке», а при наличии одного или нескольких билетов с более высоким приоритетом должно отображаться изображение Prio-Tickets = 0) { echo 'OK'; } еще { эхо «» }} ?> – Stefan

ответ

0

Если вы настойчивый для использования RLIKE, Вы можете использовать этот запрос:

SELECT * FROM `test` WHERE `id` RLIKE '^1$|^4$'; 

Смотреть онлайн: http://sqlfiddle.com/#!9/c0ede/1/0

Но лучше тогда и более эффективные и более принципиальны и быстрее, чем это использовать IN, быть как это:

SELECT * FROM `test` WHERE `id` IN (1, 4); 

Смотреть онлайн: http://sqlfiddle.com/#!9/c0ede/2/0

Thanks

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

  • Нет связанных вопросов^_^