콤마로 구분된 텍스트값을 LIKE문에서 따로 검색하는법? 0 6 504

by 김첨지의럭키데이 [2019.12.23 15:09:08]


'철수, 영희'

 

이런식으로 넘어온 파라미터를

 

like '%철수%'

and

like '%영희%'

이런식으로 나오게끔 쿼리를 짤수있나요?

궁금합니다

by 우리집아찌 [2019.12.23 16:28:35]

where regexp_like ( v , '(철이)(영희)' )


by jkson [2019.12.24 08:47:32]

이거 잘 돼요?-0-?


by jkson [2019.12.24 08:45:55]
with t as
(
  select '철수와 영희' v from dual
  union all
  select '영희와 철수' from dual
    union all
  select '영희수' from dual
)
select * 
  from t
where regexp_count(v,'철수|영희') >= 2 -- 작동
--and regexp_count(v,'희수|영희') >= 2 -- 연결된 문자에 작동 안 함

with t as
(
  select '철수와 영희' v from dual
  union all
  select '영희와 철수' from dual
    union all
  select '영희수' from dual
)
select v 
  from t a
     , (select regexp_substr(txt, '[^,]+',1,level) subtxt
          from (select '영희,희수' txt from dual)
       connect by level <= regexp_count(txt,',') + 1) b
 where a.v like '%'||b.subtxt||'%'
 group by v
having count(1) >= regexp_count('영희,희수',',') + 1

 


by 우리집아찌 [2019.12.24 09:40:32]

like '%철이%영희%' 


by 우리집아찌 [2019.12.24 09:40:56]

제건 순서에 맞춰야하네요 


by 김첨지의럭키데이 [2019.12.24 13:46:54]

다들 답변 감사드립니다 

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입