当前位置:K88软件开发文章中心编程语言SQLSQL01 → 文章内容

sql语句中得到text类型的长度的方法

减小字体 增大字体 作者:佚名     来源:asp编程网  发布时间:2018-12-30 9:14:22

今天在sql语句中判断一个text类型的字段的长度,如果超过500个字符就显示出来,不超过就不显示,按照以前的习惯,就直接使用len,结果不行。原来len不支持text类型的字段,不能使用这个。然后在网络上找了一下,使用datalength可以。
select * from table where datalength(content)>
500
这样就可以了

datalength的使用方法是:
DATALENGTH
返回任何表达式所占用的字节数。
语法
DATALENGTH ( expression )
参数
expression
任何类型的表达式。

返回类型
int
注释
DATALENGTH 对 varchar、varbinary、text、image、nvarchar 和 ntext 数据类型特别有用,因为这些数据类型可以存储可变长度数据。
NULL 的 DATALENGTH 的结果是 NULL。
说明 
兼容级别可能影响返回值。有关兼容级别的更多信息,请参见 sp_dbcmptlevel。

示例
此示例查找pubs表中 pub_name 列的长度。
USE pubsGO
SELECT length = DATALENGTH(pub_name), pub_nameFROM publishersORDER BY pub_name
GO
下面是结果集:
length 
 
 
 
 
pub_name 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

20 
 
 
 
 
 
 
 
 
Algodata Infosystems 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

16 
 
 
 
 
 
 
 
 
Binnet &
Hardley 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

21 
 
 
 
 
 
 
 
 
Five Lakes Publishing 
 


 
 
 
 
 
 
 
 
 
GGG&

 

18 
 
 
 
 
 
 
 
 
Lucerne Publishing 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

14 
 
 
 
 
 
 
 
 
New Moon Books 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

17 
 
 
 
 
 
 
 
 
Ramona Publishers 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

14 
 
 
 
 
 
 
 
 
Scootney Books 
 
 
 
 
 
 
 


前面的数字就是pub_name的长度。并且datalength对varchar、varbinary、text、image、nvarchar 和 ntext 这些字段都起作用,比len方便多了。
 



sql语句中得到text类型的长度的方法