如何在SQL中的ntext列中找出数据的长度/大小? - 它超过8000字节,所以我无法将其转换为varchar.谢谢.
使用DataLength()
SELECT * FROM YourTable WHERE DataLength(NTextFieldName) > 0
问题的线索:使用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()
修剪尾随空格并返回字符数.