2025-1/DB

[SQL] string 함수

김솔미 2025. 4. 20. 16:09
728x90
반응형

📚 MySQL 문자열 함수 12

MySQL에서 문자열을 다루다 보면 생각보다 다양한 함수들이 존재한다.
자주 쓰이는 대표적인 12개의 문자열 관련 함수들을 예제와 함께 정리해봤다.


1. CONCAT(s1, s2, …)

여러 개의 문자열을 하나로 이어 붙인다.

 
SELECT CONCAT('Hello', ' ', 'World'); 
-- 결과: 'Hello World'

2. LEFT(str, n)

문자열의 왼쪽부터 n자리추출한다.

 
SELECT LEFT('abcdef', 3); 
-- 결과: 'abc'

3. LENGTH(str)

문자열의 바이트 반환한다.
영문자: 1바이트 / 한글: 3바이트

 
SELECT LENGTH('abc'); 
-- 결과: 3

SELECT LENGTH('가나다'); 
-- 결과: 9

4. LOAD_FILE(path)

서버의 특정 경로에 있는 파일 내용을 문자열로 읽어온다.
(서버에 권한있어야 작동)

 
SELECT LOAD_FILE('/var/lib/mysql-files/test.txt'); 
-- 결과: 파일의 내용 (문자열)

 


5. LOWER(str) 또는 LCASE(str)

문자열을 모두 소문자변환한다.

 
SELECT LOWER('SQL'); 
-- 결과: 'sql' 

SELECT LCASE('SQL'); 
-- 결과: 'sql'

6. LPAD(str, len, padstr)

지정된 길이만큼 왼쪽을 특정 문자로 채움.

 
SELECT LPAD('123', 5, '0'); 
-- 결과: '00123'

7. LTRIM(str)

문자열의 왼쪽 공백을 제거한다.

 
SELECT LTRIM(' Hello'); 
-- 결과: 'Hello'

8. REGEXP 또는 RLIKE

정규 표현식이용해 패턴 매칭을 수행한다.

 
SELECT 'abc123' REGEXP '[0-9]+'; 
-- 결과: 1 (TRUE)

9. REPLACE(str, from_str, to_str)

문자열에서 특정 부분을 다른 문자열로 치환한다.

SELECT REPLACE('abcabc', 'a', 'x'); 
-- 결과: 'xbcxbc'

10. REVERSE(str)

문자열을 역순으로 뒤집는다.

 
SELECT REVERSE('abc'); 
-- 결과: 'cba'

11. STRCMP(s1, s2)

문자열을 사전식 순서로 비교한다.

  • 같으면 0
  • s1크면 1
  • s1작으면 -1
 
SELECT STRCMP('apple', 'banana'); 
-- 결과: -1

12. SUBSTRING(str, pos, len) 또는 SUBSTR(str, pos, len)

문자열의 일부분을 추출한다.
pos1부터 시작!

 
SELECT SUBSTRING('abcdef', 2, 3); 
-- 결과: 'bcd'

728x90
반응형