본문 바로가기
컴소니/DB

[오라클 DBMS 공부] 오라클 내장함수 - 문자형 함수

by 금소니 2020. 8. 3.
반응형

#100

 

숫자형 함수에 이어서 문자형 함수에 대해 알아보도록 하겠습니다.

 

1. 문자형 함수란?

특정 데이터 입력을 받아 문자 데이터 값을 반환하는 함수입니다.
문자형 함수의 경우 특히나 많이 사용되기 때문에 잘 기억해두는 것이 중요합니다.

 

2. 문자형 함수 종류

1) INITCAP(데이터), LOWER(데이터), UPPER(데이터)

위의 세 함수는 알파벳과 관련된 함수들입니다.

INITCAP은 데이터의 첫글자를 대문자로 변환하고 나머지를 소문자로 변환합니다.

LOWER은 데이터의 모든 알파벳을 소문자로 변환합니다.

UPPER는 데이터의 모든 알파벳을 대문자로 변환합니다.

EX), INITCAP, LOWER, UPPER, 함수 활용

2) CONCAT(데이터, 데이터)

데이터로 입력되는 두 값을 연결하는 함수입니다.

문자열을 연결할 때 사용되며, 정말 많이 사용됩니다.

EX) CONCAT, GOLD + SONY

3) SUBSTR(데이터, 커서위치, 길이), SUBSTRB(데이터, 커서 위치, 길이)

CONCAT함수와 반대로 문자열을 잘라내는 함수입니다.

SUBSTR함수는 커서 위치로부터 길이만큼 문자를 분리하는 함수입니다.

SUBSTRB는 커서 위치로부터 길이만큼 바이트를 분리하는 함수입니다.

EX) SUBSTR, SUBSTRB, 함수 활용

두 함수에 대해서 다른 점이 무엇인지 궁금하실 것 같아 설명을 덧붙이고자 합니다.

영문으로 데이터를 받았을때는 차이가 없습니다.

왜냐면 영문 하나의 1바이트이기 때문입니다.

하지만 한글일 경우에 한 글자가 2바이트이기 때문에 출력에 차이가 생깁니다.

즉, 금소니의 삶에서 3바이트의 위치는 소(3바이트 시작점)입니다. 그래서 출력이 소에서 2바이트이니 소가 출력되는 것입니다.

 

4) LPAD(데이터, 문자열 길이, 채워주는 문자), RPAD(데이터, 문자열 길이, 채워주는 문자)

LPAD함수와 RPAD 함수는 비슷한 기능을 가진 반대의 함수입니다.

LPAD는 입력한 데이터를 문자열 길이만큼 늘려서 반환하고, 만약 문자열 길이보다 짦을경우 채워주는 문자를 통해 채워주는 함수입니다.

RPAD는 동일한 기능이고 오른쪽에서부터 시작합니다.

EX) LPAD, RPAD, 함수 활용

5) LTRIM(데이터, 자를 문자열), RTRIM(데이터, 자를 문자열)

LTRIM함수와 RTRIM함수는 각각 왼쪽 시작점, 혹은 오른쪽 시작점에서 자를 문자열을 입력받아 자른 후 반환하는 함수입니다.

EX) LTRIM, RTRIM, 함수활용

6) REPLACE(데이터, 변경하고 싶은 문자열, 변경할 문자열)

입력한 데이터 중 일부의 문자열을 다른 문자열로 변경하여 반환하는 함수입니다.

EX) REPLACE, goldsony를 silversony로 변경

7) TRANSLATE(데이터, 변경하고 싶은 문자열, 변경할 문자열)

TRANSLATE함수는 REPLACE함수와 비슷하지만 조금 특이하면서 다른 부분이 있습니다.

REPLACE함수처럼 데이터에서 특정 문자열을 변경하지만 변경하고 싶은 문자열과 변경할 문자열에서 대응되는 대로 변경이 됩니다.

예를 보면서 자세히 설명드리겠습니다.

EX) TRANSLATE, goldsony에서 gold를 silver로 변경

보시면 silversony가 되어야하는데 silversiny가 되었습니다.

이유는 g는 s, o는 i, l은 l, d는 v에 대응되어 o가 i로 바뀌게 된 것입니다.

따라서 상황에 맞게 잘 사용하셔야 합니다.

반응형

댓글