문제

SQL Server 2005의 Len ()과 Datalength ()의 차이점은 무엇입니까?

도움이 되었습니까?

해결책

Datalen은 값을 저장하는 데 사용되는 바이트 수를 반환합니다.

http://msdn.microsoft.com/en-us/library/ms173486(sql.90).aspx

Len은 문자열의 문자 수를 반환합니다. 문자열은 단일 또는 이중 바이트 문자를 사용할 수 있으므로 단일 문자의 시간에 관계없이 항상 1을 얻을 수 있다는 Datalenger와 다릅니다.

http://msdn.microsoft.com/en-us/library/ms190329.aspx

다른 팁

데이터 길이는 후행 공간을 포함하여 바이트로 문자열의 길이를 반환합니다. Len은 후행 공간을 제외하고 캐릭터의 길이를 반환합니다. 예를 들어,

LEN ( 'String'), Len ( 'String'), Datalength ( 'String'), Datalength ( 'String'), Len (N'string '), Len (N'string'), Datalength (N'string '), Datalength (n'string')

6, 6, 6, 6, 9, 6, 6, 12, 18을 반환합니다.

LEN ()은 데이터에서 트림 (후행 공간 제거)을 다듬습니다.

Datalength () 함수는 그렇지 않습니다

예 : 선택 Len ( 'Test') - 이것은 4

데이터 길이 ( '테스트')를 선택합니다 - 이것은 5를 반환합니다.

또한 (다른 환상적이고 유용한 답변으로부터 집계) :

데이터 길이 후행 공간을 포함하여 바이트로 문자열 길이를 반환합니다.http://msdn.microsoft.com/en-us/library/ms173486(sql.90).aspx

Len은 후행 공간을 제외하고 캐릭터의 길이를 반환합니다.http://msdn.microsoft.com/en-us/library/ms190329.aspx

문자열은 하나 또는 2 바이트 (유니 코드)로 구성 될 수 있으므로 사용 결과는 문자열의 데이터 유형과 문자열에 후행 공간이 있는지 여부에 따라 다릅니다.

예를 들어,

LEN ( 'String'), Len ( 'String'), Datalength ( 'String'), Datalength ( 'String'), Len (N'string '), Len (N'string'), Datalength (N'string '), Datalength (n'string')

6, 6, 6, 6, 7, 6, 6, 12, 14를 반환합니다.

문자열과 관련하여 datalength ()를 반환합니다. 바이트 수를 반환하고 len ()은 문자 수에 대한 정수 값을 반환합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top