SharePoint 2013 Search KQL 介绍及实例分析

本文介绍了Keyword Query Language (KQL) 在SharePoint 2013 Search中的应用,包括如何直接在搜索框中使用KQL表达式,以及通过客户端模型进行查询。通过实例解析了KQL的各种操作,如通配符、布尔运算、范围查询等,帮助读者更好地理解和运用KQL。
摘要由CSDN通过智能技术生成

KQL是Keyword Query Language(关键字查询语言的缩写),在SharePoint 2013 Search 中可以使用KQL来查询(最长2048个字符):

1. KQL可以直接在界面上使用,如在SharePoint的Search Box中输入KQL 表达式,可以直接搜索出KQL 表达式所匹配的内容。

下图中 OrderNoOWSTEXT:000*就是一个 KQL表达式,表示查询Managed PropertyOrderNoOWSTEXT以000开头的记录:

2. 你也可以使用客户端模型(Client Object Model)来使用KQL, http://blog.csdn.net/farawayplace613/article/details/8444625

更具体的关于KQL的介绍可以参考:http://msdn.microsoft.com/en-us/library/ee558911.aspx,但是缺少怎么用的 实例。

 

这里我举些具体的KQL表达式的例子,并解释它们的意思(这里记录指所有SharePoint中的对象,page, item,document, folder ......):

      a. 0001  匹配所有全文中含有0001的记录

       b. OrderNoOWSTEXT:0001  匹配所有Managed PropertyOrderNoOWSTEXT的值为0001的记录

       c. OrderNoOWSTEXT:000*  匹配所有Managed PropertyOrderNoOWSTEXT的值以000开头的记录

       d.  author:"Abraham Cheng" ANDfiletype:docx  匹配所有作者是Abraham Cheng的文件类型为docx的记录

       e. Created>2012-12-16  匹配创建日期大于(晚于)2012-12-16的记录

        f."cheng tr" VS cheng tr, 前一个匹配含有“cheng tr”(中间没有其他内容)的记录, 后者匹配既 包含cheng也包含tr的记录

       g. OrderNoOWSTEXT:000*  VS OrderNoOWSTEXT=000* , 前一个匹配所有Managed PropertyOrderNoOWSTEXT的值以000开头的记录,后一个匹配所有Managed PropertyOrderNoOWSTEXT的值为000*的记录

        h. Created:2012-12-16..2012-12-28  匹配创建日期在2012-12-16 到 2012-12-28之间的记录

        i.  OrderNoOWSTEXT:0001 OR OrderNoOWSTEXT:0002 匹配所有Managed PropertyOrderNoOWSTEXT的值为0001 或 0002 的记录

        j. OrderNoOWSTEXT:000* ANDOrderNoOWSTEXT:0002  匹配所有Managed PropertyOrderNoOWSTEXT的值以000开头且该值为0002的记录

        k. OrderNoOWSTEXT:000* AND OrderNoOWSTEXT<>0001 匹配所有Managed PropertyOrderNoOWSTEXT的值以000开头且该值不为0001的记录

        l. OrderNoOWSTEXT:000* NOTOrderNoOWSTEXT=0001 匹配所有Managed PropertyOrderNoOWSTEXT的值以000开头且该值不为0001的记录

        m.  +author:"Abraham Cheng"  匹配作者为Abraham Cheng的所有记录 

             author:"John Smith"  <==> +author:"John Smith" 

         n.-author:"AbrahamCheng"   匹配作者不是"Abraham Cheng"的记录

            -author:"AbrahamCheng" <==> NOT author:"AbrahamCheng"

        o.   使用多个属性来搜索时,当属性相同且没有AND, OR等逻辑操作时,默认是OR, 当属性不相同且没有AND, OR等逻辑操作时,默认为AND

 author:"JohnSmith" author:"Jane Smith" <==>author:"John Smith" OR author:"Jane Smith"

 author:"JohnSmith" filetype:docx <==> author:"John Smith" AND filetype:docx 

         p.   "Abraham"NEAR "Cheng" VS "Cheng"NEAR "Abraham", 前者和后者意思一致,匹配 Abraham 和 Cheng在相互的附近的记录

         q.  "Cheng"ONEAR "Abraham" VS  "Abraham"ONEAR "Cheng" 前者匹配Cheng 后面的附近跟着Abraham的记录, 后者匹配Abraham 后面的附近跟着Cheng记录

         r:  WORDS(Abraham, Cheng) 匹配括弧内任意字符串的记录

          Note: NEAR, ONEAR,WORDS only forfull text search, can't specified properties(NEAR, ONEAR,WORDS 只适用于全文搜索,不可以指定Managed Property

 

          s: (cat OR dog) XRANK(cb=100) thoroughbred (这个比较复杂,我也没太搞明白,先放着,以后弄懂了再更新)

              <match expression> XRANK(cb=100, rb=0.4, pb=0.4, avgb=0.4,stdb=0.4, nb=0.4, n=200) <rank expression>

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值