2015-02-10 2 views
0

Мне нужна помощь. Я хочу показать базу данных, которая имеет имя "sample", но кроме "sample" с "fallback" слово.MYSQL: LIKE с исключением условия

Database Name 
    sample_1 
    2_sample 
    sample_fallback 
    samsple_2 
    s_sample 
    fallback_sample 

Я просто хочу, чтобы получить:

sample_1 
2_sample 
samsple_2 
s_sample 

Что я должен добавить из этого запроса?

"SHOW DATABASES LIKE '%sample%';" 
+0

В чем проблема, в точности? Вы не возвращаете ожидаемые результаты? Что * * ты возвращаешься? –

+1

Вы можете попробовать regexp со ссылкой на это http://www.tech-recipes.com/rx/484/use-regular-expressions-in-mysql-select-statements/ – vijaykumar

+0

@ EricTaylor проблема в том, что результаты ** sample_1 2_sample sample_fallback samsple_2 s_sample fallback_sample ** я хочу только (без запасного варианта слова) ** sample_1 2_sample samsple_2 s_sample ** то, что я хотел бы добавить по этому запросу симметричного, чтобы получить этот вывод – xXxrk04

ответ

1

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

select schema_name 
    from information_schema.schemata 
where schema_name like '%sample%' 
    and schema_name not like '%fallback%' 

SHOW DATABASES не является достаточно гибким.

+0

спасибо, сэр. это ответ :) – xXxrk04

0
SHOW DATABASES LIKE '%sample%' AND NOT LIKE '%fallback%'; 
Смежные вопросы