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 이런식으로 지정된 숫자만큼의 행을 만들어줌 ( 분류상 문자열 함수는 아님 ) |