<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>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # Array 原文鏈接 : [https://www.elastic.co/guide/en/elasticsearch/reference/current/array.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/array.html) 譯文鏈接 : [Array](/display/Elasticsearch/Array) 貢獻者 : @裝X帝 在 **_Elasticsearch_** 中,沒有特定的 **_array_** 類型。默認情況下,任何字段都可以包含0個或者更多值,但是,所有 **_array_** 中的值必須具有相同的數據類型,例如: 字符串數組:**_[“one”, “two”]_** 整數數組:**_[1,2]_** 數組的數組:**_[1, [2, 3]]_**,等價于**_[1,2,3]_** 對象數組:**_[ { "name": "Mary", "age": 12 }, { "name": "John", "age": 10 }]_** 注意 對象 數組并不能像你期望的那樣工作:你不能獨立于數組中的其它對象來查詢每一個對象。如果想達到這個目的,你應該使用?**_nest_**?數據類型代替?**_object_**?數據類型 詳細的解釋請看這里_**?Nested datatype**_ 當自動添加一個字段,**_array_** 的第一個值決定了字段的類型。所有接下來的值必須使用相同的數據類型或者必須至少能將他們轉換為與它相同的類型 數組不支持混合的數據類型:**_[10, “some string”]_** 數組可以包含 **_null_** 值,這些值可以由配置的 **_null_value_** 替換或完全跳過。一個空的**_array []_** 被視為不存在的字段-無值的字段。 在文檔中使用 **_array_** 類型不需要提前做任何配置,天生就支持。 ``` PUT my_index/my_type/1 { "message": "some arrays in this document...", "tags": [ "elasticsearch", "wow" ], "lists": [ { "name": "prog_list", "description": "programming list" }, { "name": "cool_list", "description": "cool stuff list" } ] } PUT my_index/my_type/2 { "message": "no arrays in this document...", "tags": "elasticsearch", "lists": { "name": "prog_list", "description": "programming list" } } GET my_index/_search { "query": { "match": { "tags": "elasticsearch" } } } ``` 1. **_tags_** 字段會動態添加為一個 _**string**_ 字段 2. _**lists**_ 字段動態添加為一個 _**object**_ 字段 3. 第二個文檔不包含 _**arrays**_,但是可以索隱為相同字段 4. 這個查詢,在 _**tags**_ 字段查找 _**elasticsearch**_,會同時匹配到這2個文檔 ## 多值字段和倒排索引 事實上,所有字段類型天生支持多值字段源于?**_Luence_**。**_Lucene?_**設計為一個全文檢索引擎。為了在一個大的文本快中查找特定單詞,**_Lucene_** 將文本標記為特定的術語,將每一個術語分別添加到倒排索引中。 這意味著即使是一個簡單的文本也必須默認支持多值。當其它數據類型如數字或者日期被添加的時,他們使用和 _**strings**_ 一樣的數據結構,因此自然變為多值。
                  <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>

                              哎呀哎呀视频在线观看