答案 0 :(得分:1)
我猜你已经找到了解决方案,但是对于其他寻找答案的人来说,这会有效。 case语句为找到非空或空字符串的每一行返回1,为每行空或Null返回0。它适用于字符和数字字段。外部的Sum()函数有效地返回计数:
select sum(
case when YourField >'' then 1
else 0
end
) 'mycount'
from YourTable
答案 1 :(得分:1)
回答你的实际问题:
旧的大格式/ LOB数据类型:TEXT,NTEXT和IMAGE,是具有许多技术限制的过时/过时数据类型(例如,您无法直接在其中使用UPDATE)。
Microsoft在SQL Server 2005发行版中修复此问题,但为了保持与先前版本的兼容性,使用三种 new 数据类型:VARCHAR(MAX),NVARCHAR(MAX)和VARBINARY(MAX) )。您应该切换到使用这些数据类型,这几乎在所有方面都更好。