2008-10-23 33 views

回答

66

使用DataLength()

SELECT * FROM YourTable WHERE DataLength(NTextFieldName) > 0 
19

线索就是在这样的问题:使用DATALENGTH()。注意它有不同的行为,以LEN()

SELECT LEN(CAST('Hello ' AS NVARCHAR(MAX))), 
     DATALENGTH(CAST('Hello ' AS NVARCHAR(MAX))), 
     DATALENGTH(CAST('Hello ' AS NTEXT)) 

返回5,16,16,

换句话说,DATALENGTH()不会删除尾部空格并返回的字节数,而LEN()修剪后行空格并返回字符的数量。

0
Select Max(DataLength([NTextFieldName])) from YourTable