오라클 정규식 4

오라클 SQL과 PL/SQL ( 정규식 / REGEXP_COUNT )

REGEXP_COUNT는 11g에서 추가된 정규식 함수 입니다. REGEXP_COUNT는 특정 문자의 개수를 세는 함수 입니다. 예제로 알아보도록 하겠습니다. 예제 1. 주어진 문자열에서 대문자 'A'가 몇 개인지 찾으세요. 더보기 SELECT TEXT, REGEXP_COUNT(TEXT, 'A') FROM T_REG ; 예제 2. 검색 위치를 3으로 지정해서 3번째 문자 이후 부터 소문자 'c'가 나오는 개수를 세는 예제 더보기 SELECT TEXT, REGEXP_COUNT(TEXT, 'c', 3) FROM T_REG ; 예제 3. i 옵션으로 대 소문자 구분 없이 몇개인지 알아보는 예제 더보기 SELECT TEXT, REGEXP_COUNT(TEXT, 'c') "result 1", REGEXP_COUNT..

오라클 SQL과 PL/SQL ( 정규식 / REGEXP_SUBSTR )

REGEXP_SUBSTR 함수는 SUBSTR의 확장판으로 특정 패턴에서 주어진 문자를 추출해 내는 함수입니다. 아래 예는 주어진 문자열에서 첫 글자가 공백이 아니고 ( '[^]' ) 그 후에 'DEF'가 나오는 부분을 추출하라는 쿼리입니다. SELECT REGEXP_SUBSTR('ABC* *DEF $GHI%KJL', '[^ ]+[DEF]') FROM DUAL; 예제를 통해 알아보는게 제일 빠르니 예제를 알아봅시다. 1. 교수테이블에서 홈페이지 주소가 있는 교수들만 조사해서 아래의 화면처럼 나오게 출력하세요. 더보기 SELECT NAME, HPAGE, LTRIM(REGEXP_SUBSTR(HPAGE, '/([[:alnum:]]+\.?){3,4}?'), '/') "URL" FROM PROFESSOR WHERE..

오라클 SQL과 PL/SQL ( 정규식 / REGEXP_REPLACE )

REGEXP_REPLACE 함수 이 함수는 REPLACE함수를 확장한 개념으로 주어진 문자열에서 특정 패턴을 찾아서 주어진 다른 모양으로 치환하는 함수입니다. 사용법이 다소 복잡하지만 아주 유용하게 사용되는 함수이므로 익혀야 합니다. 문법 REGXPP_REPALCE(source_char, patten [, replace_string [, position [, occurrence [, match_param]]]] ) souce 원본 데이터를 의미합니다. 컬럼명이나 문자열이 올 수 있고 올 수 있는 데이터 타입은 CHAR, VARCHAR2, NCHAR, NVARCHAR2, CLOB, NCLOB 입니다. patten 찾고자 하는 패턴을 의미합니다. 512바이트까지 정규표현식을 사용하며 데이터 타입은 CHAR,..

오라클 SQL과 PL/SQL ( 정규식 / REGEXP_LIKE )

정규식(Regular Expression) 함수로 다양한 조건 조회하기 SQL 문장에서도 유닉스에서 사용하는 정규식을 사용하여 다양한 검색을 할 수 있습니다. 정규식이란 유닉스에서 검색을 할 때 주로 사용되는 기술로 다양한 메타문자들을 사용하여 검색 방법을 확장하는 것을 말합니다. 정규식함수를 잘 활용하면 아주 많은 일들을 할 수 있습니다. 하지만 조금 어려울 수 있으니 어렵더라도 연습을 해야합니다. 1. REGEXP_LIKE 함수 : LIKE 함수처럼 특정 패턴과 매칭되는 결과를 검색해내는 함수 예제 1. 영문자가 들어있는 행만 출력하기 SELECT * FROM T_REG WHERE REGEXP_LIKE(TEXT, '[a-z]'); SELECT * FROM T_REG WHERE REGEXP_LIKE(T..

728x90