티스토리 뷰

SQL/MSSQL

[MSSQL] 주요 함수 - 문자열

TORO_0513 2021. 7. 5. 07:29
반응형

[문자열 편집]

기능 함수 사용예 결과
왼쪽부터 문자를 3자리 자름 SELECT LEFT('12345', 3) 123
오른쪽부터 문자를 3자리 자름 SELECT RIGHT('12345', 3) 345
왼쪽 2자리부터 3자리 자름 SELECT SUBSTRING('12345', 2', 3) 234
ABC를 역상으로 표시 SELECT REVERSE('ABC') CBA
ABC를 두번 반복 표시 SELECT REPLICATE('ABC', 2) ABCABC

 


[위치찾기/바꾸기]

기능 함수 사용예 결과
[ABC]가 있는 위치 SELECT CHARINDEX('ABC', 'KKKABC', 1)
([ABC]찾을 문자 [KKKABC]대상문자 [1]첫번째위치부터 찾음)
4
[DEF]를 [KKK]로 치환(바꿈) SELECT REPLACE('ABCDEF', 'DEF', KKK)
([ABCDEF] 대상문자 [DEF]찾을 문자 [KKK] 변경할 문자
ABCKKK

 


[문자 연결]

함수 사용 예 결과 비고사항
SELECT 'A' + 'B' + 'C' ABC  
SELECT CONCAT('A', 'B', 'C') ABC  
SELECT 'A' + 'B' + NULL NULL NULL값이 하나라도 있으면 NULL로 표시
SELECT 'A' + 'B' + 12.3 오류발생 문자와 숫자는 글자붙이기 실행 오류
SELECT CONCAT('A', NULL, 'B') AB CONCAT 함수는 NULL값은 무시하고 실행됨
SELECT 'A' + CONVERT(NVARCHAR, 12.3) A12.3 CONVERT 함수는 데이터형을 변환하는 함수
SELECT CONCAT('A', 12.3, 'B') A12.3B CONCAT 함수는 자동으로 숫자를 문자로 변환

 


[문자 정보]

기능 함수 사용예 결과
[가나다] 길이 SELECT LEN('가나다') 3
[가나다] 길이
-한글은 한글자당 2로 계산
SELECT DATALENGTH('가나다') 6
[A]의 ASCII 값 SELECT ASCII('A') 65
ASCII값 65의 실제 글자 SELECT CHAT(65) A
[가] 다국어 유니코드값 SELECT UNICODE('가') 44032
다국어 유니코드 44032의 글자 SELECT NCHAR(44032)
일자값인지 체크 SELECT ISDATE('20210230')
- 결과 : 0=일자아님 / 1=일자
* 2021년 2월 30일은 없기때문에 일자 아님
0
숫자값인지 체크 SELECT ISNUMERIC('123')
- 결과 : 0=숫자아님 / 1=숫자
1

 


[문자 변환 및 공백 제거]

기능 함수 사용예 결과
소문자를 대문자로 변환 SELECT UPPER('abc') ABC
대문자를 소문자로 변환 SELECT LOWER('ABC') abc
왼쪽공백 제거 SELECT LTRIM('    ABC') ABC
오른쪽공백 제거 SELECT RTRIM('AB C      ') AB C
왼쪽과 오른쪽 모두 공백 제거 SELECT TRIM('  AB C   ') AB C

 

* 도서 'MSSQL Server 기본에서 실무까지' 참고

반응형

'SQL > MSSQL' 카테고리의 다른 글

[MSSQL] 주요 함수 - 일자/시간  (0) 2021.07.07
[MSSQL] 주요 함수 - 숫자  (0) 2021.07.06
[MSSQL] WHERE 조건 정리  (0) 2021.07.04
[MSSQL] ORDER BY, OFFSET, FETCH NEXT  (0) 2021.07.04
[MSSQL] 중복 제거  (0) 2021.06.24
댓글