본문 바로가기
Database/MS-SQL

MS-SQL 문자수 반환 함수(LEN / DATALENGTH)

by 화곡공룡 2020. 12. 14.
반응형

MS-SQL 문자수 반환 함수에 대해 알아보겠습니다.

1. LEN 예제

후행 공백을 제외하고 지정된 문자열 식의 문자 수를 반환합니다.

구문 : LEN ( string_expression )

인수 : string_expression

계산할 문자열 식입니다. string_expression은 문자나 이진 데이터의 상수, 변수 또는 열일 수 있습니다

 

-- 앞쪽의 공백은 인식하며, 뒤쪽의 공백은 제외하고 자리수를 계산한다.
SELECT LEN('12345678') C1,
       LEN(' 12345678') C2,
	   LEN('12345678 ') C3,
	   LEN(' 12345678 ') C4

C1          C2          C3          C4
----------- ----------- ----------- -----------
8           9           8           9

2. DATALENGTH 예제

이 함수에서는 식을 표시하는 데 사용된 바이트 수를 반환합니다.

구문 : DATALENGTH ( expression )

인수 : expression

임의 데이터 형식의 식입니다.

-- 문자의 모든 공백은 인식하여 자리수를 계산한다.
SELECT DATALENGTH('12345678') C1,
       DATALENGTH(' 12345678') C2,
	   DATALENGTH('12345678 ') C3,
	   DATALENGTH(' 12345678 ') C4

C1          C2          C3          C4
----------- ----------- ----------- -----------
8           9           9           10

3. LEN과 DATALENGTH 비교

DECLARE @v1 VARCHAR(40),  
        @v2 NVARCHAR(40);  
SELECT @v1 = 'Test of 22 characters ',   
       @v2 = 'Test of 22 characters ';  

SELECT LEN(@v1) AS [VARCHAR_LEN] , DATALENGTH(@v1) AS [VARCHAR_DATALENGTH];  

VARCHAR_LEN VARCHAR_DATALENGTH
----------- ------------------
21          22



SELECT LEN(@v2) AS [NVARCHAR_LEN], DATALENGTH(@v2) AS [NVARCHAR_DATALENGTH];

VARCHAR_LEN VARCHAR_DATALENGTH
------------ -------------------
21           44

이상 MS-SQL 문자수 반환 함수에 대해 설명하였습니다.

 

반응형

댓글