不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。

我想把产品介绍为空的数据查出来,可出现“不能比较或排序 text、ntext 和 image 数据类型,除非使用 IS NULL 或 LIKE 运算符。”这样的错误。用is null 和like 都不行,郁闷。没法只有在google狂搜,终于找到了答案。

解决办法:

回任何表达式所占用的字节数。

语法

DATALENGTH ( expression )

参数

expression

任何类型的表达式。

返回类型

int

注释

DATALENGTHvarcharvarbinarytextimagenvarchar ntext 数据类型特别有用,因为这些数据类型可以存储可变长度数据。

NULL 的 DATALENGTH 的结果是 NULL。

说明  兼容级别可能影响返回值。有关兼容级别的更多信息,请参见 sp_dbcmptlevel

 

示例

此示例查找 publishers 表中 pub_name 列的长度。

USE pubs
GO
SELECT length = DATALENGTH(pub_name), pub_name
FROM publishers
ORDER BY pub_name
GO

下面是结果集:

length      pub_name                                 
----------- ---------------------------------------- 
20          Algodata Infosystems                     
16          Binnet & Hardley                         
21          Five Lakes Publishing                    
5           GGG&G                                    
18          Lucerne Publishing                       
14          New Moon Books                           
17          Ramona Publishers                        
14          Scootney Books                           

(8 row(s) affected)
有了这样问题就简单了哈 select pro_id,pro_mark from product where datalength(Pro_Mark)=0 
搞定。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值