61. SQL - 문자열 함수 2탄 총정리: REPLACE, TRIM, LPAD, UPPER, LEFT

Jason·2026년 2월 1일

SQL

목록 보기
44/47

SQL 내가 틀린 것들 #61 — 문자열 함수 2탄: REPLACE, TRIM, LPAD, UPPER, LEFT


💡 #60에서 배운 것

SUBSTRING, CONCAT, SUBSTRING_INDEX

💡 이번에 추가!

REPLACE, TRIM, CHAR_LENGTH, LPAD/RPAD, UPPER/LOWER, LEFT/RIGHT


1️⃣ REPLACE — 문자열 바꾸기

REPLACE(문자열, 바꿀것, 새것)

예시

REPLACE('가성비 노트북!', '가성비', '프리미엄')'프리미엄 노트북!'

해당 문자 여러 개 있으면 전부 바꿈!


2️⃣ TRIM — 앞뒤 공백 제거

TRIM(문자열)

예시

TRIM('  좋아요!  ')'좋아요!'

가운데 공백은 안 건드림! 앞뒤만!


3️⃣ CHAR_LENGTH vs LENGTH — 글자 수

함수'좋아요!' 결과설명
LENGTH13바이트 (한글 3바이트)
CHAR_LENGTH4글자 수!

⚠️ 한글 다루면 CHAR_LENGTH!

실전: TRIM + CHAR_LENGTH 같이 쓰기

SELECT
  TRIM(comment) AS cleaned_comment,
  CHAR_LENGTH(TRIM(comment)) AS comment_length
FROM reviews

4️⃣ LPAD / RPAD — 자릿수 맞추기

LPAD(문자열, 전체길이, 채울문자)  -- 왼쪽 채움
RPAD(문자열, 전체길이, 채울문자)  -- 오른쪽 채움

예시

LPAD('1', 5, '0')'00001'   -- 왼쪽에 0 채움
RPAD('1', 5, '0')'10000'   -- 오른쪽에 0 채움

실전: 주문번호 5자리 맞추기

SELECT
  LPAD(order_number, 5, '0') AS formatted_order
FROM orders
order_numberformatted_order
100001
2300023
45600456

5️⃣ UPPER / LOWER — 대소문자 변환

UPPER(문자열)  -- 대문자로
LOWER(문자열)  -- 소문자로

예시

UPPER('hello')'HELLO'
LOWER('HELLO')'hello'

실전: 이메일 소문자 통일

SELECT
  LOWER(email) AS email
FROM users

6️⃣ LEFT / RIGHT — 왼쪽/오른쪽에서 N글자

LEFT(문자열, N)   -- 왼쪽에서 N글자
RIGHT(문자열, N)  -- 오른쪽에서 N글자

예시

LEFT('01012345678', 3)'010'
RIGHT('01012345678', 4)'5678'

실전: 전화번호 뒷자리 4개

SELECT
  RIGHT(phone, 4) AS last_four
FROM users

📌 문자열 함수 전체 정리

하고 싶은 것함수
일부 추출SUBSTRING(문자열, 시작, 길이)
합치기CONCAT(a, b, c)
구분자로 자르기SUBSTRING_INDEX(문자열, 구분자, N)
바꾸기REPLACE(문자열, 바꿀것, 새것)
공백 제거TRIM(문자열)
글자 수 (한글)CHAR_LENGTH(문자열)
왼쪽 채우기LPAD(문자열, 길이, 채울문자)
대문자UPPER(문자열)
소문자LOWER(문자열)
왼쪽 N글자LEFT(문자열, N)
오른쪽 N글자RIGHT(문자열, N)

문자열 함수 완전 정복! 💪

profile
Data Analyst | Thoughts Become Things. 할 수 있다고 생각하면 할 수 있다. 할 수 없다고 생각하면 할 수 없다. | www.linkedin.com/in/명수-제-7ab843200

0개의 댓글