아하
검색 이미지
생활꿀팁 이미지
생활꿀팁생활
생활꿀팁 이미지
생활꿀팁생활
하얀고슴도치236
하얀고슴도치23619.06.05

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

오라클 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) );

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

55글자 더 채워주세요.
답변의 개수
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) );

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