Oracle

오라클 문자열 함수

damian 2012. 1. 26. 15:08

1. ASCII 함수와 CHR함수

ASCII는 문자를 지정된 아스키 코드로 변환한다.

ASCII('A') ----->  65

CHR은 아스키코드를 문자로 바꾸어 준다.

CHR(65) -------> A

 

2. GREATEST함수와 LEAST함수

GREATEST는 가장 큰 문자열을 반환한다

GREATEST('A','B','CF','Z') ----> Z

LEAST는 가장 작은 문자열을 반환한다.

LEAST('A','B','C') -------------> A

# 숫자 < 문자

 

3. INITCAP, UPPER, LOWER함수

INITCAP함수는 첫글짜를 대문자로하고 나머지를 문자로 변환

INITCAP('HONG GIL DONG') ---> Hong Gil Dong

UPPER함수는 모두 대문자로 변환한다.

UPPER('aBcd') ---------------> ABCD

LOWER함수는 모두 소문자로 변환한다.

LOWER('AbCD') --------------> abcd

 

4. INSTR함수

문자열에서 특정 문자열이 포함된 위치검색하며 시작위치와 출현횟수는 생략가능(기본값1)

INSTR(문자열, 찾을문자열, 시작위치, 출현횟수)

INSTR('OOXOOXO','X',1,2) -----------> 6

 

5. SUBSTR함수

문자열에서 특정위치에 있는 문자를 추출한다.

SUBSTR(문자열, 시작위치, 길이)

SUBSTR('ABCDEF', 2, 3) -------------> BCD

 

6. LENGTH함수

문자길이를 추출한다.

LENGTH('오라클') ------------> 3    # 문자길이를 표시

LENGTHB('오라클') -----------> 6   # 바이트 수를 표시

 

7. TRIM함수와 LTRIM, RTRIM함수

TRIM은 좌우의 특정문자를 제거시켜준다.

TRIM('M' FROM 'MY MOM') ---> Y MO        # 이 함수는 형식이 조금다르다.

LTRIM('MY MOM', 'M') --------> Y MOM

RTRIM('MY MOM', 'M') --------> MY MO

TRIM과 LTRIM, RTRIM의 조금다르다, TRIM은 한문자만 제거시켜주는 반면 LTRIM, RTRIM은 2개이상의 문자를 제거시키는데 'AB'를 제거하면 AB라는 문자를 제거하는게 아니라 A또는 B를 제거한다.

즉, RTRIM('GO TO THE GONGOGOGOGO','OG') -----> GO TO THE GON

 

8. LPAD함수와 RPAD함수

LPAD와 RPAD는 좌우에 특정 문자를 채워준다.

LPAD('TEXT',10,'*') ------> ******TEXT

RPAD('TEXT',10,'*') ------> TEXT******

여기서 숫자10은 총문자열길이를 뜻하는데, 문자열보다 숫자 크기가 작으면

LPAD('TEXT',3,'*') -------> TEX 이렇게 문자열이 잘린다.

 

9.  REPLACE함수와 TRANSLATE

REPLACE함수는 특정문자열을 원하는 문자열로 바꾸어준다.

RAPLACE('I LOVE YOU', 'YOU', 'FOOD') -----> I LOVE FOOD

반면에 TRANSLATE는 하나의 완성된 문자가아니라 문자 하나하나를 매치시켜 바꾼다.

TRANSLATE('I LOVE YOU', 'YOU', 'ABC') ---> I LBVE ABC

여기서 Y -> A ,  O -> B ,  U -> C로 바뀌었다. 하지만 매치되는 문자길이가 다르면

TRANSLATE('I LOVE YOU', 'YOU', 'AB') ----> I LBVE AB

즉 남은 부분은 NULL과 매치가 되어 생략이된다.

 

10. SOUNDEX함수

SOUNDEX함수는 발음이 비슷한 이름등을 찾아준다.

SOUNDEX('TERNER') = SOUNDEX('TURNER')

 

11. 특수문자를 쓸때 사용하는 Q'[]'

'문자를 사용하거나 기타 다른 문자를 입력시 사용한다.

Q'[I 'm a boy : '&gg']'  ------------> I 'm a boy : '&gg'

'문자는 ''으로도 가능하다. ''you'' --> 'you'

 

'Oracle' 카테고리의 다른 글

Oracle SCHEMA 변경  (0) 2012.03.12
(펌)오라클 날짜 함수 정리  (0) 2012.02.03
oracle 프로시져 검색  (0) 2012.01.11
오라클 테이블 락 ( Table lock ) 확인  (0) 2012.01.10
PL/SQL  (0) 2011.12.21