오라클(Oracle) 문자형 함수 1차 UPPER, LOWER, INITCAP, CONCAT, SUBSTR, LENGT 함수 사용방법

오라클(Oracle) 문자형 함수 1UPPER, LOWER, INITCAP, CONCAT, SUBSTR, LENGT 함수 사용방법

이번 오라클 강좌 내용은 문자형 함수 입니다.
문자형 함수를 말 그래도 문자값을 이용하여 다른 값으로 결과값을 얻는 건데요.
문자열로 할 수 있는것이 많아서 그런지 함수가 많은 편입니다. 그래서 1차와 2차로 나눠서
알려드리겠습니다.

1차는 UPPER, LOWER, INITCAP, CONCAT, SUBSTR, LENGTH 함수 사용방법이고
다음 강좌인 2차는 LPAD ,RPAD ,LTRIM , RTRIM TRANSLATE, REPLACE 힘수에 대해 알아볼겁니다.

그럼 1차 문자형 함수에 대해 알아보겠습니다.

함수에 적용할 테이블은 지난번에 생성한 테이블에 컬럼하나를 더 추가했습니다.

오라클 문자함수 강좌


 

1. UPPER 함수
이 함수는 문자를 무조건 대문자로 변환해주는 함수 입니다.
파스칼케이스(첫문자가 대문자로 시작되며 단어조합 시 각 단어의 첫번째 대문자 ex:UserId )로 되어 있는 데이터인 경우 조건식에 UPPER 함수를 이용해서 비교할 때 많이 사용됩니다.

컬럼에는 숫자형, 문자형 , 날짜 등의 타입을 사용해도 오류없이 사용할 수 있습니다
다만 함수가 적용되는 컬럼은 문자형 컬럼입니다.

UPPER 함수

 


 

이제 실행을 해서 확인해보겠습니다.
COL1에는 한글데이터가, COL2는 숫자, COL3는 영어가 들어있습니다.
날짜도 확인하기 위해 SYSDATE 오늘 날짜를 조회하는 함수를 사용해서 확인해보겠습니다.

>> SELECT UPPER(COL1) AS COL1 --한글
      ,UPPER(COL3) AS COL2 --숫자
      ,UPPER(COL4) AS COL3 --영어
      ,UPPER(SYSDATE) AS DATE_TYPE
 FROM TEST1;

결과는 아래와 같이 나오며 영문값이 모두 대문자로 변환되었습니다.

UPPER(SYSDATE)


 

2. LOWER 함수
LOWER 함수는 UPPER 함수와 반대로 소문자로 변환시켜 줍니다.
사용 방법은 LOWER(컬럼 또는 문자) 입니다.

LOWER 함수


 

실행하면 데이터 값이 모두 소문자로 변경된것을 확인할 수 있습니다.

>> SELECT LOWER(COL4)  FROM TEST1;

SELECT LOWER(COL4)  FROM TEST1;


 

3. INITCAP 함수
INITCAP 함수가 파스칼 케이스와 비슷하게 변환해주는 함수 입니다.
여러 단어가 있을 때 각 단어의 첫번째 단어를 대문자로 변환해주는 함수입니다.

사용 방법은 INITCAP(컬럼 또는 문자) 입니다.

INITCAP 함수



>> SELECT INITCAP(COL4)  FROM TEST1;
실행하면 5,7번째 값의 첫번째 단어들만 대문자로 변환합니다.

SELECT INITCAP(COL4)  FROM TEST1;


 

4. CONCAT 함수
이전 함수들은 많이 들어보였을 텐데 이 이후 함수들은 잘 모르시는것들도 있을 거예요
하지만 이전 함수와 같이 전혀 어렵지 않습니다.
CONCAT 함수는 두컬럼의 값을 하나의 문자로 연결해주는 함수 입니다.
사용방법은 CONCAT(컬럼1,컬럼2) 입니다.

CONCAT 함수


 

실행을 해보겠습니다.
>> SELECT CONCAT(COL4,COL1)  FROM TEST1;
COL4 컬럼값과 COL1 컬럼값이 하나로 연결되어 조회됩니다.

컬럼이 아니고 문자값을 연결해서 사용할 수도 있습니다.

>> SELECT CONCAT(COL4,COL1)  FROM TEST1;



5. SUBSTR 함수
SUBSTR 함수는 글자를 원하는 길이만큼 추출해서 잘라내는 함수 입니다.
간단히 예를 들면 ABCDE 가 있는면 BC등을 추출할 대 사용되는 함수 입니다.

사용 방법은 SUBSTR(컬럼, start_position, length) 게 됩니다.
start_position 은 추출하기 시작하는 위치 입니다.
LENGTH 는 추출하고자 하는 단어의 길이갑니다.

SUBSTR 함수


 

 

실행을 해서 알아보겠습니다. 실행한 결과를 보시면 쉽게 이해가 가실겁니다.
첫번째 행은 원래값 두번재 행은 함수를 적용한 값입니다.

>> SELECT COL4
      ,SUBSTR(COL4,2,3)
 FROM TEST1;

결과를 보면 SEOUL 에서 2번째 위치한 E 부터 3번째 글자까지 라고 했으니
EOU가 결과값이 된겁니다.

>> SELECT COL4


 

여기서 추가로 아셔야 할것은 start_position 값에 -(음수)값이 들어가면
시작점을 뒤에서 부터 시작한다는 겁니다.

실행해서 알아보겠습니다.
아래 쿼리로 실행해보면 뒤어서 부터 단어를 추출합니다.

>>SELECT COL4  --원래 값
      ,SUBSTR(COL4,-2,3) --자른값
 FROM TEST1;

 start_position 값에 -(음수)값이 들어가면


 

함수 끝에 LENTH값을 생략할 수 있는데요 값이 생략되면
시작지점 부터 이후에 나오는 모든 단어를 추출하게 됩니다.
쿼리를 실행해서 알아보겠습니다.

>> SELECT COL4  --원래 값
      ,SUBSTR(COL4,3) --자른값
 FROM TEST1;

 LENTH값을 생략


 

6. LENGTH 함수
문자열 함수 1차 마지막 함수 입니다.
LENGTH 함수는 값의 길이가 얼마나 되는지 알려줍니다.
SUBSTR 함수와 함께 혼용해서 많이 사용됩니다.

사용 방법은 LENGTH(컬럼) 입니다.

LENGTH 함수


 

쿼리를 실행해서 알아보겠습니다.
>> SELECT COL4, LENGTH(COL4) FROM TEST1;

첫번째 컬럼은 원래값 두번째 컬럼은 LENGTH 함수를 사용한 값입니다.
원래 값의 길이값이 조회되는것을 확인할 수 있습니다.

>> SELECT COL4, LENGTH(COL4) FROM TEST1;

이상 오라클(Oracle) 문자형 함수 1차 UPPER, LOWER, INITCAP, CONCAT, SUBSTR, LENGT 함수 사용방법을 알아보았습니다.
고생하셨습니다.