SQL中datelength()和len()函数的区别

发布网友

我来回答

5个回答

热心网友

1、首先指出一点,是【datalength】不是【datelength】
2、这两个函数的区别类似于oracle数据库中的【lengthb】何【length】,虽然返回的都是一个长度值,可是意义不一样,如:
select datalength('张三'); --返回【4】,因为一个汉字占两个字节
select len('张三'); --返回【2】,把一个汉字当做一个字符
select datalength('AB'); --返回【2】,因为一个英文占一个个字字节
select len('AB'); --返回【2】,把一个汉字当做一个字符
3、扩展:oracle中的 【lengthb】何【length】也是这个效果
4、由上面所说,这两个函数的区别主要是:
datalength:返回字节长度。
length:返回字符长度。

---
以上,希望对你有所帮助。

热心网友

1. DATALENGTH
可以是任何类型的表达式。
(DATALENGTH 对 varchar、varbinary、text、image、nvarchar 和 ntext 数据类型特别有用,因为这些数据类型可以存储可变长度数据。)

2. len只能计算字符串。

热心网友

len() 和 datalength() 的区别

len()返回字符数;datalength()返回字节数

declare @v_char varchar(200), @v_int int

select @v_char = 'i am xlong! ', @v_int = 1234567

select len(@v_char) , datalength(@v_char) , len(@v_int), datalength(@v_int)

----------- ----------- ----------- -----------
11 14 9 4

(1 行受影响)

热心网友

datalength:返回字节长度。
length:返回字符长度。

热心网友

DATALENGTH ( expression ) 可以是任何类型的表达式。
返回类型是int类型,而LEN()只能针对字符串,返回的类型也是INT型的

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com