SQL Server全文搜索长连续的单词

时间:2017-05-13 15:36:42

标签: sql-server full-text-search

我正在尝试在p1005字符串中搜索1005,但它找不到任何结果。

我使用了查询:

SELECT * 
FROM Products 
WHERE CONTAINS (Name, '"*1005*"')

SELECT * 
FROM Products 
WHERE CONTAINS (Name, '1005') 

SELECT * 
FROM Products 
WHERE FREETEXT (Name, '"1005"')

有没有办法在单词之间搜索单词?

1 个答案:

答案 0 :(得分:0)

我不一定是一个非常熟练的SQL DBA,但是当你想在单词中搜索时,你似乎只能使用CONTAINS执行前缀搜索。例如,以下查询将起作用:

USE MyDb;  
GO  
SELECT Name  
FROM myDb.Places  
WHERE CONTAINS(Name, ' "Chain*" ');  
GO 

....但是你需要的那个不起作用,因为它是一个后缀搜索。

SELECT * FROM Products WHERE CONTAINS(Name,' "*1005" ')

我会尝试重构它以使用LIKE运算符。如果有人有另一个想法,我也很乐意找到答案。