MSSQL 문자열함수들을 정리해봅니다.
함수명 | 용도, 설명 |
CHARINDEX | 문자열에서 특정 문자의 INDEX 를 찾는 함수, 자바스크립트의 indexOf 와 비슷 |
PATINDEX | 문자열에서 특정 패턴(LIKE와 동일한 패턴)의 INDEX 를 찾는 함수 |
CONCAT | 문자열 붙이기 |
CONCAT_WS | 문자열 붙이기인데, 중간에 구분자를 넣음 |
FORMAT | 날짜,시간,숫자 등에 서식 지정 |
LEFT | 왼쪽에서부터 지정된 숫자만큼의 문자를 반환 |
RIGHT | 오른쪽에서부터 지정된 숫자만큼의 문자를 반환 |
SUBSTRING | 지정된 위치에서 지정된 숫자만큼의 문자를 반환 |
LEN | 문자 수를 반환 |
LOWER | 소문자로 변환 |
UPPER | 대문자로 변환 |
LTRIM | 왼쪽 공백제거, 왼쪽부터 지정된 문자들을 제거 |
RTRIM | 오른쪽 공백제거, 오른쪽부터 지정된 문자들을 제거 |
TRIM | 공백제거, 지정된 위치부터 지정된 문자들을 제거 |
REPLACE | 주어진 문자열에서 지정된 문자를 모두 지정된 문자로 대체 |
REPLICATE | 지정된 횟수만큼 문자열 값을 반복 |
REVERSE | 문자열 값을 역순으로 반환 |
SPACE | 공백을 지정된 횟수만큼 반복 |
STR | 숫자를 문자열로 변환 |
STRING_AGG | STUFF + FOR XML PATH 과 비슷함. 특정 컬럼의 여러 행의 데이터를 받아서 한 개의 로우에 붙여서 반환 |
STRING_SPLIT | STRING_AGG 와 반대. 구분자로 연결된 값을 받아서 행으로 구분해서 반환 |
STUFF | 문자열에서 특정 위치의 값을 다른 값으로 대체. 보통 이 용도보다는 STRING_AGG 의 용도로 많이 사용했는데, STRING_AGG 가 있어서, 사용빈도는 좀 떨어질 듯. |
TRANSLATE | 문자열에서 특정 문자들을 특정 문자들로 대체( 여러 개의 문자들 사용 가능) |
CAST, CONVERT | 날짜,숫자,문자 등의 형식을 변환 ( 분류상 문자열 함수는 아님 ) |
GENERATE_SERIES | 1~100 이런식으로 지정된 숫자만큼의 행을 만들어줌 ( 분류상 문자열 함수는 아님 ) |