코딩이 쉬워진다!/03. SQL

오라클 REGEXP_LIKE 정규식 / like 와 in

javajin 2021. 3. 3. 19:56
728x90
반응형
SMALL
  • 특정 문자열을 포함한 값만 가져오고 싶다.
    select  * from GONGSI_LD where ld_date = '2021.02.26';

오늘의 공시 전체데이터를 가져온다.

  • 특정 문자열을 포함한 값을 가져올때 보통 like 조건을 사용한다.
    select  * from GONGSI_LD where ld_date = '2021.02.26' and gs_ny like '%배당%' or gs_ny like '%무상%';

like 조건에 맞는 배당과 무상이 있는 데이터만 가져온다.

  • like와 in은 함께 사용할 수 없다.
    select  * from GONGSI_LD where ld_date = '2021.02.26' and gs_ny like in ('%유상%','%유상%','%무상%');

like in  오류 발생 (사용불가)

  • 정규식 패턴으로 여러 조건 검색하기 
    select  * from GONGSI_LD where ld_date = '2021.02.26' and regexp_like (gs_ny,'유상|배당|무상')

regexp_like 을 사용하여 유상, 배당, 무상, 등 원하는 텍스트를 가져온다.

  • REGEXP_LIKE 문법 : REGEXP_LIKE (컬럼명, 정규식 패턴)
함수명 설명
REGEXP_REPLACE 정규식 패턴을 검색하여 대체문자열로 변경.
REGEXP_INSTR 정규식 패턴에 대해 문자열을 검색하고 일치하는 위치를 반환.
REGEXP_SUBSTR 지정된 문자열 내에서 정규식 패턴을 검색하고 일치하는 부분의 문자열을 추출
REGEXP_COUNT 입력문자열에서 패턴일치가 발생되는 횟수를 반환.

 

 

728x90
반응형
LIST