DBMS/MySQL 정리

[MySQL] 문자열 함수

웹코린이 2023. 6. 24. 22:59
728x90

문자열과 문자열 연결하기 : CONCAT 함수

 

 연결 연산자 + 로 문자열을 연결하는 방법

SELECT [칼럼 1] + ' : ' + [칼럼 2] FROM [테이블명]

 

 CONCAT 함수로 문자열을 연결하는 방법

SELECT CONCAT('[연결할 문자열 1]', '[연결할 문자열 2]', ...)

 

문자열과 숫자 또는 날짜 연결하기: CAST, CONVERT 함수

  • 숫자나 날짜 등의 값을 문자열로 변환해 연결할 때 변환 함수인 CAST와 CONVERT 함수를 사용한다.
  • CAST 함수는 1개의 인자만 넘겨 사용한다.
  • CONVERT 함수는 2개의 인자를 넘겨 사용한다.

 

 

CAST 함수 사용 방법

CAST(expression AS datatype(length))

 

CONVERT 함수 사용 방법

CONVERT (data_type [(length)], expression [, style])
-- length : 자료형, expression : 값

 

 

NULL과 문자열 연결하기: ISNULL, COALESCE 함수

  • 문자열과 연결하려는 값이 NULL이면 결과는 NULL로 반환된다. 그래서 테이블에 NULL이 있다면 문자열 또는 숫자로 자료형을 변환해야 한다.
  • 이 때 활용하는 함수가 ISNULL, COALESCE 이다.

 

ISNULL 함수의 형 변환 사용 방법

ISNULL (열 이름, 대체할 값)

 

COALESCE 함수의 형 변환 사용 방법

COALESCE(열1, 열2, ...)

 

 

문자열을 소문자나 대문자로 변경하기: LOWER, UPPER 함수

  • LOWER: 문자열을 소문자로 변경
  • UPPER: 문자열을 대문자로 변경

LOWER 함수 사용 방법

SELECT 열 LOWER(문자열) FROM 테이블

 

UPPER 함수 사용 방법

SELECT 열 UPPER 문자열 FROM 테이블

 

 

문자열 공백 제거하기: LTRIM, RTRIM, TRIM 함수

  • LTRIM: 문자열 기준 왼쪽의 공백을 제거한다.
  • RTRIM: 문자열 기준 오른쪽의 공백을 제거한다.
  • TRIM: 양쪽의 공백을 제거한다.

 

LTRIM 함수 사용 방법

SELECT 열 LTRIM ('       열') FROM 테이블

 

RTRIM 함수 사용 방법

SELECT 열 RTRIM('열      ') FROM 테이블

 

TRIM 함수 사용 방법

SELECT 열 TRIM ('     열     ') FROM 테이블

 

 

특정 문자까지 문자열 길이 반환하기: CHARINDEX 함수

  • 지정한 특정 문자까지의 길이를 반환한다.
  • 지정한 문자가 문자열에 없으면 0을 반환한다.
SELECT 열 CHARINDEX(열에 포함된 특정 문자, 열) FROM 테이블

 

지정한 길이만큼 문자열 반환하기: LEFT, RIGHT 함수

  • LEFT: 문자열의 왼쪽에서 시작해 정의한 위치까지 문자열을 반환한다.
  • RIGHT: 문자열의 오른쪽에서 시작해 정의한 위치까지 문자열을 반환한다.
SELECT 열 LEFT(열, 반환할 문자 개수) FROM 테이블
SELECT 열 RIGHT(열, 반환할 문자 개수) FROM 테이블

 

 

 

지정한 범위의 문자열 반환하기: SUBSTRING 함수

  • 지정한 범위의 문자열을 반환한다.
  • 2번째 인자에는 시작 범위를 넣고, 3번째 인자에는 반환할 문자 개수를 입력한다.
SELECT 열 SUBSTRING(열, 시작 범위, 반환할 문자 개수) FROM 테이블

 

 

특정 문자를 다른 문자로 변경하기: REPLACE 함수

  • 지정 문자를 다른 문자로 대체한다.
  • 1번째 인자에는 열 또는 문자를 입력하고, 2번째 인자는 변경하려는 문자열을, 3번째 인자는 변경 문자열을 입력한다.
SELECT REPLACE(열 또는 문자열, 변경하려는 문자열, 변경 문자열) FROM 테이블

 

 

문자 반복하기: REPLICATE 함수

  • 문자를 반복할 때 사용한다.
  • 반복할 문자와 반복 횟수를 인자로 전달한다.
SELECT REPLICATE(반복할 문자, 반복 횟수)

 

 

문자열 역순으로 표시하기: REVERSE 함수

  • 문자열을 거꾸로 정렬하는 함수이다.
  • 도메인의 자릿수 구하기, IP 대역 구하기 등을 할 때 활용한다.
SELECT 열 REVERSE(열)

 

 

지정한 범위의 문자열 삭제하고 새 문자열 끼워 넣기: STUFF 함수

  • 지정한 범위의 문자를 삭제하고 새 문자열을 끼워 넣는다.
SELECT STUFF('Do it! XX SQL Server', 8, 2, N'마이크로소프트')

-- 실행 결과
-- DO it! 마이크로소프트 SQL Server

 

 

숫자를 문자열로 변환하기: STR 함수

  • CAST 함수나 CONVERT 함수처럼 숫자를 문자열로 변환한다.
  • 다른 점이 있다면 2번쨰 인자로 전달하는 변환 길잇값이 변경할 문자열 길이보다 짧은 경우 오른쪽 맞춤으로 정렬한다는 것과 3번째 인자로 전달하는 소수 부분 길이에 맞게 반올림해 표현한다는 것이다.
SELECT STR(123.45, 6, 1);

-- 실행 결과
-- 123.5
728x90