我在mssql选择
时遇到问题在我的表中有一个数据类型为ntext的列,我正在搜索特定的字符。 当我读取该值并将其转换为十六进制时,得到类似的东西
SELECT convert(varbinary(max),convert(nvarchar(max),COLUMN_Value)) FROM db.TABLE WHERE PK = 1234
0x3C005000200063006C006100730073003D004D0073006F004E006F0072006D0061006C0020007300740...
在十六进制值中有例如3C00,当我现在重写我的选择并搜索此值时,没有行匹配:/
SELECT * FROM db.TABLE WHERE convert(varbinary(max),convert(nvarchar(max),COLUMN_Value)) LIKE '%3C00%'
有谁知道这里的问题是什么?
答案 0 :(得分:1)
最后我用以下查询
完成了它SELECT * FROM db.TABLE WHERE CONVERT(varchar(max),convert(varbinary(max),convert(nvarchar(max),COLUMN_Value)),2) LIKE '%3C00%';
我使用了我的第一个查询(3C00)中的十六进制值,并找到了包含它的每一行
答案 1 :(得分:0)
试试这个
SELECT * FROM db.TABLE WHERE convert(nvarchar(max),COLUMN_Value) LIKE '%3C00%'