LEN和DATALENGTH的区别

LEN和DATALENGTH的区别

 

 

       DATALENGTH( expression ) 返回用于表示任何表达式在MSSQL Server中所占用的字节数。

       LEN( string_expression ) 返回给定字符串表达式的字符数(不包括尾随空格),而不是返回字节数。一个非字符串表达式使用LEN时,MS SQLServer会先转换成字符串,然后再返回该字符串的LEN值的。

 

if object_id('ta') is not null

drop table ta

go

 

create table ta

(col1 varchar(20), col2 char(20), col3 nvarchar(20), col4 nchar(20), col5 datetime, col6 int)

Go

 

insert into ta

values('hello你好', 'hello你好', 'hello你好', 'hello你好', getdate(), 100)

 

select len(col1), len(col2), len(col3), len(col4), len(col5), len(col6), * ,convert(varchar(30), col5)

from ta

--返回:

 

select datalength(col1), datalength(col2), datalength(col3), datalength(col4), datalength(col5), datalength(col6), *

from ta

--返回:

 

 

 

 

你可能感兴趣的:(sql,server)