본문 바로가기
공부/DB

SQL 문자형 함수

by 단순한 프로그래머 2025. 8. 11.

SQL에서 문자열을 자르거나, 붙이거나, 대체하는 등 

가공할 수 있는 문자형 함수를 알아보자.

함수명 의미
LOWER(str) 소문자로 변환
UPPER(str) 대문자로 변환
INITCAP(str) 단어의 첫 문자만 대문자로 변환
LENGTH(str) 문자열 길이
LENGTHB(str) 문자열의 바이트 길이
INSTR(str,특정문자) 특정 문자의 위치를 반환
SUBSTR(str,위치,길이)
해당 위치에서 길이만큼 문자열을 추출
CONCAT(str1,str2) str1, str2를 결합
TRIM(str) 문자열의 양쪽 공백을 제거
LTRIM(str, 특정문자) 문자열에서 왼쪽에 특정문자를 제거
RTIM(str, 특정문자) 문자열에서 오른쪽에 특정문자를 제거
LPAD(str, 길이, 추가문자열) 왼쪽에 추가문자열을 붙임
REPLACE(str,찾는문자열,대체문자열) 문자열에서 찾는 문자열을 대체문자열로 변경
TRANSLATE(str,찾는문자열,대체문자열) 문자열에서 찾는 문자열길이만큼 대체문자열로 변경

대소문자 변환( LOWER, UPPER, INITCAP )

LOWER('hELlo'), UPPER('hELlo'), INITCAP('hELlo') 로 쿼리를 작성했을 때 결과이다.

 

 


문자열 길이( LENGTH, LENGTHB )

LENGTH는 문자열의 길이를,

LENGTHB는 문자열의 바이트 길이가 결과로 출력된다.

 

 


문자열 추출 및 위치찾기( SUBSTR, INSTR )

SUBSTR( name, 1, 1 ) 이름에서 앞에 성만 추출

INSTR( email, '@' ) 이메일에서 @문자의 위치값을 찾음

 

 

 


문자제거( TRIM, LTRIM, RTRIM )

 

 

 

 
 
 

문자추가( LPAD, RPAD )

앞자리나 뒷자리를 0으로 채워서 자릿수를 맞출 때 유용하다.

 

 

 

길이가 오버되면 추가되는 문자열이 잘려서 들어간다.

 

 
 

 

문자결합( CONCAT )

Name과 Position컬럼을 서로 결합하여 보여주는 쿼리이다.

 

 

 

 


문자변환( REPLACE, TRANSLATE )

REPLACE는 길이와 상관없이 대체되지만

TRANSLATE는 찾은 문자열 길이만큼만 대체된다.

 

 


<< 오라클DATABASE 11g와 함께하는 SQL과 PL/SQL>> 참고하여 작성

 

'공부 > DB' 카테고리의 다른 글

SQL 날짜형 함수  (1) 2025.08.11
SQL 숫자형 함수  (0) 2025.08.11
비교연산자  (6) 2025.08.11
산술연산자  (2) 2025.08.11
온라인 쿼리 연습  (3) 2025.08.11