我使用的是SQL Server 2005。我有一个带有文本列的表,在表中有许多行,其中该列的值不是空的,但它是空的。试着对比”会得到这样的回答:
数据类型text和varchar在不等于操作符中是不兼容的。
是否有一个特殊的函数来确定文本列的值是否为空而不是空?
我使用的是SQL Server 2005。我有一个带有文本列的表,在表中有许多行,其中该列的值不是空的,但它是空的。试着对比”会得到这样的回答:
数据类型text和varchar在不等于操作符中是不兼容的。
是否有一个特殊的函数来确定文本列的值是否为空而不是空?
当前回答
它会做两件事: 空检查和字符串空检查 将空值替换为默认值,例如NA。
SELECT coalesce(NULLIF(column_name,''),'NA') as 'desired_name') from table;
其他回答
我将测试SUBSTRING(textColumn, 0,1)
实际上,你只需要使用LIKE操作符。
SELECT * FROM mytable WHERE mytextfield LIKE ''
你必须做到这两点:
从文本为空或类似文本的表中选择*
使用DATALENGTH方法,例如:
SELECT length = DATALENGTH(myField)
FROM myTABLE
使用IS NULL操作符:
Select * from tb_Employee where ename is null