Sql server SQL Server FTS返回不准确的结果
我们的表中有一列,该列为全文搜索编制了索引。我们在其中存储值,例如Sql server SQL Server FTS返回不准确的结果,sql-server,full-text-search,Sql Server,Full Text Search,我们的表中有一列,该列为全文搜索编制了索引。我们在其中存储值,例如 <zNSIC>1010</zNSIC> 我不明白为什么它会将该值中的DM视为匹配项。有什么想法吗?这是SQL Server 2014。将“15”解析为一个单独的短语,如下所示: select keyword, special_term, display_term, source_term from sys.dm_fts_parser('("<zNSIC>15*")', 1033, 0
<zNSIC>1010</zNSIC>
我不明白为什么它会将该值中的DM视为匹配项。有什么想法吗?这是SQL Server 2014。将“15”解析为一个单独的短语,如下所示:
select keyword, special_term, display_term, source_term
from sys.dm_fts_parser('("<zNSIC>15*")', 1033, 0, 0);
keyword special_term display_term source_term
0x007A006E007300690063 Exact Match znsic <zNSIC>15
0x00310035 Exact Match 15 <zNSIC>15
0x006E006E00310035 Exact Match nn15 <zNSIC>15
选择关键字、特殊术语、显示术语、源术语
来自sys.dm_fts_解析器(“(“15*”),1033,0,0;
关键字特殊\u术语显示\u术语源\u术语
0x007A006E007300690063完全匹配znsic 15
0x00310035完全匹配15 15
0x006E006E00310035完全匹配nn15
好的,我假设它使用>作为断字符?有没有办法忽略这一点?@geoffswartz这可能会有帮助:
<zNSIC>DM15</zNSIC>
select keyword, special_term, display_term, source_term
from sys.dm_fts_parser('("<zNSIC>15*")', 1033, 0, 0);
keyword special_term display_term source_term
0x007A006E007300690063 Exact Match znsic <zNSIC>15
0x00310035 Exact Match 15 <zNSIC>15
0x006E006E00310035 Exact Match nn15 <zNSIC>15