오라클 DB에서 다중 LIKE 하는법이 궁금합니다.

2019. 06. 05. 08:08

오라클 DB에서 다중 LIKE 하는법이 궁금합니다.

select *from table where column like '%some%'

이런식으로 LIKE 연산자를 쓰는법은 알고있습니다.

select from table where regexp_like (column, 'some|someting|what')

이런식으로 regexp_like 를 쓰는법도 알고있습니다.

다만 이때 regexp_like 는 2번째 인자가 크기가 커지면 안되는 등 문제가 있는데

select from table where regexp_like (column, '2번째 인자 부분');

저 2번째 인자 부분을 다른 테이블의 서브쿼리로 대체할수 있는 방법은 없습니까??

예를들면 select from table where regexp_like (column, (select column from table) );

이런식으로 진행하고 싶습니다.

공유하고 돈벌기 ♥︎

총 1개의 답변이 있습니다.

질문자 채택 답변

안녕하세요

select from table where regexp_like (column, (select column from table) );

패턴자리에 메타문자로 들어가야 하는 부분에

서브쿼리를 넣고싶다고 하시는것같아요

select문의 결과를 생각해보시면 이해하실수 있으실거에요

select 결과 패턴형식이 아닌 배열형식으로 결과가 나오는데요

이 서브쿼리 부분을 패턴형식인 'A|B|C' 형식으로 만들어서 문자로 넣으신다면 가능할것같네요

select from table where regexp_like (column, (select concat(',Listagg(column, '|' ),') from table) );

해본적은 없으나 맞았으면 좋겠습니다 ㅎ

2019. 06. 06. 03:35
68