我需要在自由文本列中查询包含rm -fr install
和-
的字符串。该列定义为_
-具有很多字符的非常大的列。
这是一个字符串:'%OTHER MIE-BMI%的说明'
我尝试使用varchar(8000)
-没有结果。
我也尝试使用LIKE '%OTHER MIE-Explanation of BMI%'
-没有结果。
尝试LIKE '%OTHER MIE-Explanation of BMI%' ESCAPE '-'
-我收到以下错误消息:
不能在表或索引视图'#TEMP1'上使用CONTAINS或FREETEXT谓词,因为它不是全文索引。
请帮助!
答案 0 :(得分:2)
您的问题不可复制。
我运行了此测试:
DECLARE @Tbl TABLE (Col1 varchar(max));
INSERT INTO @Tbl (Col1) VALUES ('%OTHER MIE-Explanation of BMI%')
SELECT * FROM @Tbl
WHERE Col1 LIKE '%OTHER MIE-Explanation of BMI%'
结果是:
Col1
%OTHER MIE-Explanation of BMI%
如果没有结果,那么您认为在表中的字符串实际上就不在那里。
答案 1 :(得分:0)
尝试一下:
col like '%OTHER MIE_Explanation of BMI%'
或:
col like '%OTHER MIE%Explanation of BMI%'
连字符以不同的形式出现,其中最常见的是破折号和破折号。我的猜测是在那里使用了一些更晦涩的破折号。
答案 2 :(得分:-1)
字符串实际上在那儿。我将其转储到Excel中并分离(TEXT TO COLUMNS),并且字符串确实存在。这是一个很大的自由文本字段。字符串在那里。