#初始化準備(建立庫和user)
#建立表
put /libzyh
「settings」:,
「address」: ,
「age」: ,
「interests」: ,
「birthday」:
#新增user
put /libzyh/user/1
put /libzyh/user/6
#from size 相當於sql語句中的limit
get /libzyh/user/_search/
#顯示資料的版本
get /libzyh/user/_search/
#匹配name為lisi的
get /libzyh/user/_search/
}#查詢user表中的所有
get /libzyh/user/_search/}}
#多個匹配,query:匹配詞語,field在哪個區域查詢
get /libzyh/user/_search}}
#中的所有分詞,並且保證各個分詞的相對位置不變:,匹配interests欄位中同時含有這兩個詞的user
get libzyh/user/_search
}}#返回指定欄位address,和name
get /libzyh/user/_search}}
#控制載入字段
get /libzyh/user/_search
「_source」:
}#還可以使用萬用字元*
get /libzyh/user/_search}}
delete lib3
#按照年齡的公升序排序
get /libzyh/user/_search
「sort」: [
「age」:
#filter查詢
#filter是不計算相關性的,同時可以cache。因此,filter速度要快於query。測試,先建立乙個表
delete /lib12
post /lib12/items/_bulk}}
}}}#過濾出**為40的所有結果
get /lib12/items/_search
{「post_filter」: {
「term」: {
「price」: 40
#過濾出**是25或40的所有結果
get /lib12/items/_search
{「post_filter」: {
「terms」: {
「price」: [25,40]
#因為itemid被分詞索引了,如果使 term.需要加.keyword
get /lib12/items/_search
{「post_filter」: {
「term」: {
「itemid.keyword」: 「id100123」
#同上而match則不用
get /lib12/items/_search
{「post_filter」: {
「match」: {
「itemid」: 「id100123」
ElasticSearch 翻頁查詢
相對於ealsticsearch的search api,翻頁查詢可以將查詢結果集分頁返回,而不是將所有的結果放在乙個page返回。如果查詢的結果集包含大量的資料,就可以用到翻頁查詢 scroll api,比如有200k條資料,可以將它們分成20次請求,每次只返回10k條查詢結果.有點類似於資料庫裡面...
ElasticSearch 查詢語法
author title publish date form指定從 返回 size指定返回數量 from 1 size 1 sort group by publish date 特定字段查詢所指特定值 query context 會根據匹配程度生成不同的匹配分數 全文本查詢針對文字型別 字段級別查詢...
elasticsearch高亮查詢
pageinfo elasticsearchtemplate.queryforpage query,article.class 帶條件的分頁查詢 test public void testselectpagebyid 建立querybuilder查詢條件 querybuilder querybuil...