오라클에서 특정 문자열의 포함 여부를 확인할 때 LIKE 연산자와 INSTR 함수를 사용한다. LIKE 연산자는 조건절(WHERE)에서 특정 문자열이 포함된 데이터를 찾을 때 사용하며, INSTR 함수는 특정 문자열이 포함된 위치를 반한 하므로 특정 문자열을 자를 때 많이 사용한다. 오라클 특정 문자열 포함 여부 확인LIKE 연산자를 사용하여 문자열 포함 여부 확인
LIKE 연산자는 조건절(WHERE)에서 컬럼에 특정 문자열이 포함되었는지 확인할 때 많이 사용한다. 문자열을 찾으면 true, 못찾으면 false를 반환한다. CASE 표현식에 사용
LIKE 연산자는 true, false를 반환하므로 CASE 표현식에 사용이 가능하다. PL/SQL의 IF 문에서도 사용이 가능하다. INSTR 함수를 사용하여 문자열 포함 여부 확인
INSTR 함수는 특정 문자열을 찾은 위치를 정수형(숫자)으로 반환한다. 문자열을 찾으면 1이상, 못 찾으면 0을 반환한다. 조건절(WHERE)에서 문자열을 찾을 때 LIKE 연산자를 사용하는 것이 좋으며, INSTR 함수를 조건으로 사용해도 문제는 없으나 조건에 사용하는 컬럼이 인덱스 컬럼인 경우 속도에 영향이 있을 수 있으므로 확인 후 사용해야 한다. CASE 표현식에 사용
INSTR 함수는 문자열을 찾은 위치를 정수형으로 반환하므로 CASE 표현식 외에도 DECODE, SUBSTR 함수 등 조금 더 다양한 연산에 활용이 가능하다. 문자열 자르기
INSTR 함수는 문자열을 자를때 많이 사용된다. 위의 예제는 성명(ename)에서 특정 문자("M")의 위치를 찾은 후 해당 위치에서 2자리의 문자를 자르는 방법이다. 예제쿼리(테이블포함).txt 0.00MB LIKE 연산자와 INSTR 함수에 대해서 조금 더 자세히 알고 싶다면 아래의 포스팅을 읽어보면 된다. [Oracle] 오라클 LIKE 사용법 완벽 정리 (여러개, 패턴, 대소문자) 오라클 SQL에서 LIKE 연산자는 자주 사용하는 구문 중 하나이다. 문자열에서 와일드카드(%)를 사용하여 원하는 문자가 포함된 자료를 쉽게 검색할 수 있다. 단순 검색 외에도 대문자 소문자 구분 gent.tistory.com [Oracle] 오라클 INSTR 함수 사용법 완벽 정리 (CHARINDEX, IndexOf) 오라클에서는 문자열에서 원하는 문자를 찾을 때 INSTR 함수를 사용한다. INSTR 함수는 대소문자를 구별하여 문자를 검색하며, 여러 개의 문자를 찾을 때는 OR 연산자를 사용하면 된다. 해당 문자를 gent.tistory.com ● SELECT [컬럼명] FROM [테이블명] WHERE [컬럼명] LIKE '특정문자열%' <example> ▶ '김' 으로 시작하는 사람을 모두 조회 - SELECT id,name FROM member WHERE name LIKE '김%' ▶ '진'으로 끝나는 사람을 모두 조회 - SELECT id,name FROM member WHERE name LIKE '%김' ● SELECT [컬럼명] FROM [테이블명] WHERE [컬럼명] LIKE '%특정문자열%' ▶ '프린터'
가 들어가는 제품을 모두 조회 - SELECT id,p_name FROM member WHERE p_name LIKE '%프린터%'
● SELECT [컬럼명] FROM [테이블명] WHERE [컬럼명] LIKE '특정문자열?' ▶ '김' + 외자인 사람을 모두 조회 - SELECT id,name FROM member WHERE name LIKE '김?' posted by Gap85 댓글을 달아 주세요 |