(摘抄自公司大牛的筆記,自己總結一下)
模擬mysql,我們需要=、>、>=、<、<= 、or、and、in、like、count、sum、group by、order by、limit
在高版本的es裡面使用了boolquery替換了filter
querybuilders.termquery("isdel",1));
//termquery相當於=,相當於isdel=1
querybuilders.rangequery("overduestarttime").
lte(startdate.gettime())
//rangequery
//lte <=
//lt <
//gte >=
//gt >
boolquerybuilder.must(querybuilders.termquery("isdel",req.getis_del()));
//must相當於and
casestatusquery.should(querybuilders.termquery("casestatus",s));
//should相當於or
querybuilders.termsquery("clientcompanyid",req.getclientcompanyidlist())
//termquery相當於in,可以傳遞list
querybuilders.wildcardquery("phone1", "*" + req.gettelephone() + "*")
//wildcard 正則匹配
querybuilders.matchphrasequery("debtorname", req.getdebtor_name())
//matchphrase 不會分詞,直接匹配有完整相關短語的記錄
aggregationbuilder debttotalsum = aggregationbuilders.sum(debt_total_sum_key).field("debttotal");
aggregationbuilder debttotalcount = aggregationbuilders.count(debt_total_count_key).field("debttotal");
searchresponse searchresponse = client.preparesearch(elasticsearchutil.getindexname())
.settypes(elasticsearchutil.type_name)
.setquery(boolquerybuilder)
//指定查詢字段
.addstoredfield("id")
.addsort(order, sortorder)
//分頁
.setfrom((currentpage - 1) * limit).setsize(limit)
.execute()
.actionget();
public void batchinsert(listlist,client client) ms", system.currenttimemillis() - start);
if (!bulkresponse.hasfailures())
}
Elasticsearch 學習筆記
參考 關係型資料庫 elasticsearch 資料庫database索引index,支援全文檢索 表table型別type 資料行row文件document,但不需要固定結構,不同文件可以具有不同字段集合 資料列column字段field 模式schema 索引字段型別numeric dataty...
ElasticSearch學習筆記
2 解壓檔案unzip master.zip 3 允許外掛程式鏈結es,開啟跨域,需要修改elasticsearch的配置檔案elasticsearch.yml,檔案新增兩行 複製 4 進入elasticsearch目錄,啟動elasticsearch.bin elasticsearch 5 安裝e...
elasticsearch筆記 其他
put movies name plot put index doc 1 get index search put index put index doc 1 get index search get twitter search put index put index put index put ...