Oracle SQL에서 문자열의 길이를 구할 때 사용하는 LENGTH 함수에 대해 자세히 알아봅니다. 다양한 예제와 실무 활용 팁을 통해 개발자가 실제로 활용할 수 있도록 구성하였습니다.
1. LENGTH 함수란?
LENGTH 함수는 입력된 문자열의 문자 수를 반환하는 Oracle SQL 내장 함수입니다.
LENGTH(string)
string
: 길이를 측정할 문자열
2. 기본 사용 예제
SELECT LENGTH('Oracle') AS result FROM dual;
-- 결과: 6
SELECT LENGTH('오라클') AS result FROM dual;
-- 결과: 3 (문자 수 기준)
3. LENGTHB와의 차이점
LENGTHB 함수는 바이트 단위의 문자열 길이를 반환합니다. 멀티바이트 문자 환경에서는 결과가 다를 수 있습니다.
SELECT LENGTH('오라클'), LENGTHB('오라클') FROM dual;
-- 결과: 3, 9 (UTF-8에서는 한글 한 글자가 3바이트)
4. 실무 활용 예제
1) 입력값 유효성 검사
SELECT
full_name,
CASE WHEN LENGTH(full_name) > 20 THEN 'Too Long' ELSE 'OK' END AS name_check
FROM users;
2) 특정 길이 이하만 필터링
SELECT * FROM comments
WHERE LENGTH(comment_text) <= 200;
3) 문자열 정제 전 길이 비교
SELECT original_text, LENGTH(original_text), LENGTH(TRIM(original_text))
FROM raw_data;
5. LENGTH 함수와 함께 사용되는 함수
- TRIM: 문자열 앞뒤 공백 제거
- SUBSTR: 특정 위치부터 부분 문자열 추출
- INSTR: 특정 문자의 위치 탐색
SELECT LENGTH(TRIM(' Oracle ')) AS trimmed_length FROM dual;
-- 결과: 6
6. LENGTH 함수 사용 시 유의사항
- NULL 값이 입력되면 결과도 NULL입니다.
- 공백 문자도 길이에 포함됩니다.
- LENGTH와 LENGTHB를 혼용할 경우, 문자셋에 따라 결과 차이가 발생할 수 있습니다.
7. LENGTH 함수 실무 팁
- VARCHAR2 타입 컬럼의 데이터 길이 제한 검사 시 유용합니다.
- 멀티바이트 언어를 사용할 경우 LENGTHB로 바이트 수 검사를 병행하는 것이 좋습니다.
- 정제 전/후의 길이 차이로 데이터 클렌징 품질을 측정할 수 있습니다.
8. 결론
LENGTH 함수는 Oracle SQL에서 문자열 처리의 기초이자 강력한 도구입니다. 다양한 함수와의 조합을 통해 유효성 검사, 데이터 클렌징, 텍스트 분석 등 실무에서 광범위하게 사용됩니다. 특히 다국어 데이터나 문자셋 관련 작업 시 LENGTHB와의 차이를 이해하는 것이 중요합니다.
'Database > Oracle' 카테고리의 다른 글
[ Oracle] 오라클 REPLACE() 함수 사용법과 문자열 치환 실전 예제 (0) | 2025.06.03 |
---|---|
[ Oracle] 오라클 TRIM() 함수 완전 정복: 공백 및 문자 제거 활용법 (0) | 2025.06.03 |
[ Oracle] 오라클 INSTR() 함수로 문자열 위치 찾기의 모든 것 (0) | 2025.06.03 |
[ Oracle] 오라클 SUBSTR() 활용법: 데이터 전처리에 강력한 함수 (0) | 2025.06.03 |
[ Oracle] 오라클 CONCAT() 함수로 텍스트 데이터 처리하는 법 (0) | 2025.06.03 |