我在SO上看到了几个关于在SQL Server上全文搜索中匹配部分单词的可能性的问题,但它们都已经很老了,所以我发帖看看是否有关于这种情况的更新。
我在使用全文搜索的表格中的单个字段上运行关键字搜索。 我希望能够匹配一个部分单词,而不仅仅是一个给定单词开头的通配符搜索。
所以,我知道我能做到:
Contains(table.myfield, '"par*"'
会匹配party
,partner
等内容......
我也希望能够说:
Contains(table.myfield, '"*par*"'
匹配spartan
,sparing
等内容......
说FTS无法实现这一点是否属真,我不得不诉诸LIKE '%par%'
来获得我需要的结果?
答案 0 :(得分:1)
全文搜索仍然不允许使用双通配符。但是,您现在可以使用Azure搜索使用Lucene语法同时对多个列执行正则表达式搜索,如here所述。例如,要搜索具有术语“高级”或“初级”的所有作业,您可以执行以下搜索:
& queryType = full& $ select = business_title& search = business_title:/(Sen | Jun)ior /