布林查詢是最常用的組合查詢,根據子查詢的規則,只有文件滿足所有子查詢條件時,elasticsearch 引擎才將結果返回。布林查詢支援的子查詢條件共4種
must (and)
should (or)
must_not (not)
filter
需求: 查詢 from 為 gu 並且 age 為 30 的資料
get zhifou/doc/_search},}]}
}}
需求: 查詢只要時 from 為 gu 或者 tags 為 閉月的資料
get zhifou/doc/_search},}]}
}}
需求:查詢 from 既不是 gu 並且 tags 也不是 可愛 還有 age不是18的資料
get zhifou/doc/_search},},}]
}}}
需求: 查詢 from 為 gu, age 大於 25 的資料
get zhifou/doc/_search}],"filter": }}
}}}
注意: 這裡 bool 下面為什麼不用 should 而用 must
首先 在查詢過程中 優先經過 filter 過濾,
然後 過濾出來的結果 再去匹配 must 或 should 中的 此時 should 是或 因此 會放行所有的結果
elasticsearch之mapping中元屬性
1.1 all是乙個特殊的字段,它把其他欄位的值用空格分開,作為乙個大string,進行檢索,預設不會對該字段進行單獨儲存。該欄位通常用於搜尋並不知道該值是否存在文件中,類似迷糊搜尋。例如下面的例子 搜尋包含johe smith 1970任何其中乙個的文件。get my index search 注...
全文搜尋之 Elasticsearch
elasticsearch es 是乙個基於 lucene 的開源搜尋引擎,它不但穩定 可靠 快速,而且也具有良好的水平擴充套件能力,是專門為分布式環境設計的。json 輸入 輸出格式為 json,意味著不需要定義 schema,快捷方便 restful 基本所有操作 索引 查詢 甚至是配置 都可以...
Elasticsearch 之 資料索引
對於提供全文檢索的工具來說,索引時乙個關鍵的過程 只有通過索引操作,才能對資料進行分析儲存 建立倒排索引,從而讓使用者查詢到相關的資訊。這樣就在索引twitter中的tweet型別中儲存了id為1的資料。索引操作的結果為 index twitter type tweet id 1 version 1...