<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # Term Query(項查詢) 原文鏈接 : [https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-term-query.html) 譯文鏈接 : [http://www.apache.wiki/pages/viewpage.action?pageId=4260518](http://www.apache.wiki/pages/viewpage.action?pageId=4260518) 貢獻者 : @小布丁 **term query** (項查詢)是查找包含在反向索引中指定的**確切項**的文檔。 例如: ``` POST _search { "query": { "term" : { "user" : "Kimchy" } ① } } ``` ①在反向索引的 _user_ 類型中查詢確切項包含 _Kimchy_ 的文檔。 可以指定?_boost_?參數,用以使此**term query**?(項查詢)比另一個查詢具有更高的相關性分數。 例如: ``` GET _search { "query": { "bool": { "should": [ { "term": { "status": { "value": "urgent", "boost": 2.0 ① } } }, { "term": { "status": "normal" ② } } ] } } } ``` ①緊急查詢子句有一個?_boost 2.0_,意味著它比正常查詢子句重要兩倍。 ②?_normal_?子句擁有默認中立的?_boost 2.0 。_ **為什么?term query?(項****查詢)與我的文檔不匹配?** 字符串字段可以是?**text**(文本類型:作為完整文本處理,如電子郵件正文)、?**keyword?**(關鍵字:視為精確值,如電子郵件地址或郵政編碼)、?**Exact values**(精確值:如數字,日期和關鍵字)在字段中指定的精確值添加到倒排索引中確保它可以被搜索。 然而,文本字段是被分析過的。這意味著它們的值首先通過?**[analyzer](https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis.html)**(分析器)以產生項列表,然后將其添加到倒排索引。 有很多方法可以分析文本:默認?**[standard analyzer](https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-standard-analyzer.html)**(標準分析器) 刪除大多數標點符號,將文本分成單個單詞,并將其減少。例如,標準分析器會將字符串 “Quick Brown Fox!” 改成項 [quick,brown,fox] 。 這個分析過程使得可以在一大塊全文中搜索單個單詞。 **term query**(項查詢)在字段的倒排索引中查找一個**確切的項**,它并不知道關于字段?**analyzer?**(分析器)的任何事。這就確保在使用?**keyword?**(關鍵字)、數字、日期等字段查找值是有用的。當查詢全文字段的時候,使用?**[match query](https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-match-query.html)**?(匹配查詢)來替代,它可以清楚的知道字段如何被分析的。 為了演示,嘗試下面的例子。首先,創建一個索引,指定字段映射,并索引文檔: ``` PUT my_index { "mappings": { "my_type": { "properties": { "full_text": { "type": "text" ① }, "exact_value": { "type": "keyword" ② } } } } } PUT my_index/my_type/1 { "full_text": "Quick Foxes!", ③ "exact_value": "Quick Foxes!" ④ } ``` ① _full_text_(全文本) 字段是 **text**(文本) 類型并且將被分析。 ② exact_value (精確值) 字段是 **keyword** (關鍵字)類型并且不會被分析。 ③?_full_text_(全文本)倒排索引將會包含項列表: _[quick,foxes]_ 。 ④?exact_value (精確值)倒排索引將會包含精確項:_[Quick Foxes!]_ 。 現在,對比一下 **term query** (項查詢)和 **match query** (匹配查詢)的結果集: ``` GET my_index/my_type/_search { "query": { "term": { "exact_value": "Quick Foxes!" ① } } } GET my_index/my_type/_search { "query": { "term": { "full_text": "Quick Foxes!" ② } } } GET my_index/my_type/_search { "query": { "term": { "full_text": "foxes" ③ } } } GET my_index/my_type/_search { "query": { "match": { "full_text": "Quick Foxes!" ④ } } } ``` ① 該查詢匹配到結果,是因為 _exact_value_?(精確值)字段包含精確項?_Quick Foxes!_ 。 ② 該查詢沒有匹配到結果,是因為 _full_text_ (全文本)字段僅包含項?_quick_ 和 _foxes_ 。并不包含精確項?_Quick Foxes!_?。 ③ 項?_foxes_ 通過 **term query** (項查詢)匹配到 _full_text_ (全文本)字段。 ④ **match query** (匹配查詢)首先在 _full_text_ (全文本)字段上分析查詢字符串,然后查看文檔是否包含 _quick_ 或者 _foxes_ 或者 _quick foxes_ 。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看