当前位置: 首页 > 面试题库 >

sys.dm_fts_parser SQL全文

程鸿煊
2023-03-14
问题内容

我们很难弄清楚赋予sys.dm_fts_parser的两个相似字符串会产生不同的结果

select * from sys.dm_fts_parser('"0 CAD"', 0, null, 0)

似乎认为“ 0 CAD”是一个令牌(返回2个令牌)

select * from sys.dm_fts_parser('"0 cad"', 0, null, 0)

返回3个令牌-正确

更重要甚至更令人困惑的是为什么

select * from Table where contains(*,"point 5 CAD")工作 select * from Table where contains(*,"point 5 cad")失败

搜索的列包含“ point 5 CAD”的位置-

全文索引构建器不应该基于索引设置而忽略杂音词(例如“ 5”)或将其包括在内。
我们都尝试过并且无法解释为什么“ nnnn CAD”是特别的东西

请注意,根据http://msdn.microsoft.com/zh-
cn/library/ms142583.aspx,
假定全文不区分大小写

我想念什么?

编辑:使用SQL 2012 11.0.2218


问题答案:

使用SQL 2008时

select * from sys.dm_fts_parser('"0 CAD"', 0, null, 0) - gives 2 tokens   
select * from sys.dm_fts_parser('"0 CAD"', 1033, null, 0) - gives 3 tokens

在SQL 2012(11.0.3218)上:

select * from sys.dm_fts_parser('"0 CAD"', 1033, null, 0) - gives 2 tokens

在SQL2012中,Microsoft引入了一个新的分词系统(版本14.0.4763.1000)http://msdn.microsoft.com/zh-
cn/library/gg509108.aspx

看来工作破坏者现在可以识别3个字符的ISO 4217货币代码,并且如果在3个字符代码之前有一个数字,则不会分解。



 类似资料:
  • 5.1. Node.js相关工具 grunt/gulp/fis/webpack bower/spm/npm tdd/bdd cucumber/mocha standard babel/typescript/coffee 5.2. 前端开发4阶段 html/css/js(基础) jQuery、jQuery-ui,Extjs(曾经流行) Backbone(mvc),Angularjs、Vuejs(当前

  • 回顾 在前面的章节(分页),我们已经加强了数据库查询,因此能够在页面上获取各种查询。 今天,我们会继续探讨数据库的话题,只是领域不同。所有存储内容的应用程序必须提供搜索能力。 许多其它类型的网站可能使用了谷歌、必应等索引所有的内容并且提供查询结果。这个对于大多数静态页面的网站,像论坛,是很好用。我们应用程序 microblog 的基本单元是用户短小的 blog,不是整个页面。我们希望搜索结果是动态

  • 问题内容: 使用Sql Server 2008,您如何才能使用全文本搜索实际找到完全匹配的字符串。我对此很难过,只是在网上的任何地方都找不到令人满意的解决方案。 例如,如果我要搜索字符串“ Bojan Skrchevski”,则我希望第一个结果就是那个。 到目前为止,我已经尝试将字符串格式化为“ Bojan * NEAR Skrchevski *”并调用CONTAINSTABLE以获取结果,但是此

  • 安全在Web应用开发中是一项至关重要的话题,Django提供了多种保护手段和机制:

  • Elasticsearch-PHP 客户端支持两种安全设置方式:HTTP 认证和 SSL 加密。 HTTP 认证 如果你的 Elasticsearch 是通过 HTTP 认证来维持安全,你就要为 Elasticsearch-PHP 客户端提供身份凭证(credentials),这样服务端才能认证客户端请求。在实例化客户端时,身份凭证(credentials)需要配置在 host 数组中: $hos

  • 安全 no_file_caps 要求内核无视文件的权限。这样,执行文件的唯一途径就只有:由root去执行或者setuid root noexec={on|off} noexec32={on|off} 是否允许将某部分内存映射为"禁止执行",这是一种防止数据缓冲区溢出攻击的保护措施(也就是WinXP SP2曾经大力宣传的数据执行保护功能),建议保持默认值"on"。 [说明]noexec对32bit代