Elasticsearch——query string

1. query string基礎語法

1GET /test_index/test_type/_search?q=test_field:test
2GET /test_index/test_type/_search?q=+test_field:test 必須包含,其實跟上面同樣
3GET /test_index/test_type/_search?q=-test_field:test 不包含
複製代碼

一個是掌握q=field:search content的語法,還有一個是掌握+和-的含義json

2. _all metadata

在搜索的時候,若是沒有指定搜索的字段,就默認搜索 _all field, 其中包含了全部 field 的值。bash

es中的_all元數據,在創建索引的時候,咱們插入一條document,它裏面包含了多個field,此時,es會自動將多個field的值,所有用字符串的方式串聯起來,變成一個長的字符串,做爲_all field的值,同時創建索引。app

例如:ui

1{
2  "name""jack",
3  "age"26,
4  "email""jack@sina.com",
5  "address""guangzhou"
6}
複製代碼

"jack 26 jack@sina.com guangzhou",做爲這一條document的_all field的值,同時進行分詞後創建對應的倒排索引.spa

在生產環境下不使用。code

3. query string 的分詞

  1. query string必須以和index創建時相同的analyzer進行分詞
  2. query string對exact value和full text的區別對待
相關文章
相關標籤/搜索