Использование regexp_like - PullRequest
       3

Использование regexp_like

2 голосов
/ 17 января 2020

У меня есть запрос, где я использую regex_like, и мне нужно более одного параметра, что-то вроде этого:

WHERE regexp_like (FILENAME,'_G_',) or (FILENAME,'_Z_',) or (FILENAME,'_M_',)

Заранее спасибо

Ответы [ 3 ]

3 голосов
/ 17 января 2020

Вы можете разложить регулярное выражение следующим образом:

WHERE regexp_like (FILENAME,'_[GMZ]_',)

[GMZ] представляет пользовательский класс символов, состоящий из символов 'G', 'M' и 'Z'.

1 голос
/ 17 января 2020

Вы можете использовать следующие regexp:

regexp_like (FILENAME,'.{1}[GZM]{1}.{1}')
  • Здесь . (точка) представляет любой символ
  • {1} представляет только 1 символ, разрешенный для предыдущий шаблон.

Ура !!

0 голосов
/ 17 января 2020

Если вы хотите добавить два или более различных параметра, которые не имеют много общего, то вы можете использовать | для их разделения следующим образом:

select * 
from table_name 
WHERE regexp_like (FILENAME,'_G_|-kk_|-AH-');

Вот маленький DEMO

Не знаете, что именно вы хотите, когда вы просите "заказать по нему", но попробуйте это:

select id, filename
from table_name 
WHERE regexp_like (FILENAME,'_G_|-kk_|-AH-')
order by filename
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...