国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SpringBoot中進(jìn)行elasticSearch查詢,使用QueryBuilders構(gòu)建各類條件查詢

這篇具有很好參考價(jià)值的文章主要介紹了SpringBoot中進(jìn)行elasticSearch查詢,使用QueryBuilders構(gòu)建各類條件查詢。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

查詢所有

//搜索全部文檔
QueryBuilder queryBuilder =
QueryBuilders.matchAllQuery();

查詢單個(gè),等于/eq

//單個(gè)匹配,搜索name為li的文檔
QueryBuilder queryBuilder =
QueryBuilders.matchQuery("name", "li");

查詢多個(gè)字段匹配某一個(gè)值

//搜索name中或nickname中包含有l(wèi)i的文檔(必須與li一致)
QueryBuilder queryBuilder =
QueryBuilders.multiMatchQuery("li","name", "nickname");

模糊匹配

//搜索名字中含有l(wèi)i文檔(name中只要包含li即可)
WildcardQueryBuilder queryBuilder =
QueryBuilders.wildcardQuery("name","*li*");

BoolQueryBuilder復(fù)合查詢

BoolQueryBuilder對(duì)象使用must方法build,多個(gè)and使用多個(gè)must

WildcardQueryBuilder queryBuilder1 = QueryBuilders.matchQuery("name", "li");
WildcardQueryBuilder queryBuilder2 = QueryBuilders.matchQuery("id", "1");

BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
//查詢名字是LI和id是1的所有數(shù)據(jù)
boolQueryBuilder.must(queryBuilder1);
boolQueryBuilder.must(queryBuilder2);

BoolQueryBuilder對(duì)象使用should方法build,多個(gè)or使用多個(gè)should使用

WildcardQueryBuilder queryBuilder1 = QueryBuilders.matchQuery("name", "li");
WildcardQueryBuilder queryBuilder2 = QueryBuilders.matchQuery("id", "1");

BoolQueryBuilder boolQueryBuilder = QueryBuilders.boolQuery();
//查詢名字是LI或id是1的所有數(shù)據(jù)
boolQueryBuilder.should(queryBuilder1);
boolQueryBuilder.should(queryBuilder2);

must:必須滿足的條件

should:非必須滿足的條件

minimumShouldMatch(1):至少要滿足一個(gè) should 條件

等值查詢

BoolQueryBuilder queryBuilder =
QueryBuilders.boolQuery().must(QueryBuilders.termQuery("name", "小李"));

范圍查詢

BoolQueryBuilder queryBuilder =
QueryBuilders.rangeQuery("age").gte(18).lte(50);

判空查詢

BoolQueryBuilder queryBuilder =
QueryBuilders.boolQuery()
.must(QueryBuilders.existsQuery("name"))
.mustNot(QueryBuilders.existsQuery("tag"));
//查詢name有值,tag不存在值

分頁查詢

SearchResponse response =
this.transportClient
.prepareSearch(index)
.setTypes(type)
.setQuery(queryBuilder)
.setFrom(offset)
.setSize(rows)
.setExplain(false)
.execute()
.actionGet();

本篇文章如有幫助到您,請(qǐng)給「翎野君」點(diǎn)個(gè)贊,感謝您的支持。

首發(fā)鏈接:https://www.cnblogs.com/lingyejun/p/17557467.html文章來源地址http://www.zghlxwxcb.cn/news/detail-587487.html

到了這里,關(guān)于SpringBoot中進(jìn)行elasticSearch查詢,使用QueryBuilders構(gòu)建各類條件查詢的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • SpringBoot+Elasticsearch使用resthighlevelclient對(duì)象查詢條件為“且+或”

    查詢年齡為15或者16或者17或者18的且班級(jí)為1班的學(xué)生信息 首先,確保您的項(xiàng)目中包含了 Elasticsearch 的依賴: 然后,您可以創(chuàng)建一個(gè)包含查詢邏輯的服務(wù)類。假設(shè)您有一個(gè)名為 StudentService 的服務(wù)類: 在上述代碼中,您需要替換 your_index_name 為實(shí)際的 Elasticsearch 索引名稱,并根

    2024年01月25日
    瀏覽(23)
  • 【ElasticSearch-基礎(chǔ)篇】ES高級(jí)查詢Query DSL術(shù)語級(jí)別查詢并結(jié)合springboot使用

    Elasticsearch 提供了基于 JSON 的完整 Query DSL(Domain Specific Language)來定義查詢。 因Query DSL是利用Rest API傳遞JSON格式的請(qǐng)求體(RequestBody)數(shù)據(jù)與ES進(jìn)行交互,所以我們?cè)谑褂胹pringboot的時(shí)候也可以很方便的進(jìn)行集成,本文主要講述的就是使用springboot實(shí)現(xiàn)各類DSL的語法查詢。 Elastics

    2024年02月01日
    瀏覽(21)
  • spring boot es 支持中文精準(zhǔn)查詢的方法QueryBuilders.termQuery

    1,問題: 當(dāng)我們使用QueryBuilders.termQuery方法對(duì)指定的字段進(jìn)行精準(zhǔn)查詢時(shí),如果查詢的條件為英文字母時(shí),是沒有問題的 當(dāng)查詢條件為中文時(shí),則可能會(huì)查詢不出數(shù)據(jù),如下:當(dāng)algorithmTag為中文時(shí),即使es中有對(duì)應(yīng)的記錄,也是查詢不出來的 附:依賴的es版本: 2,解決方法

    2024年02月11日
    瀏覽(15)
  • 使用springboot對(duì)Elasticsearch 進(jìn)行索引的增、刪、改、查

    一 SpringBoot + Elasticsearch 項(xiàng)目環(huán)境搭建 1.1 修改pom文件添加依賴 目前使用spring-boot-starter-parent版本為2.2.8.RELEASE 對(duì)應(yīng)spring-data-elasticsearch版本為2.2.8.RELEASE,版本對(duì)應(yīng)可以自行百度,如果不行直接用elasticsearch-rest-high-level-client工具類吧 1.2 新建配置文件 二 RestHighLevelClient的使用 Re

    2024年02月07日
    瀏覽(17)
  • datagrip連接elasticsearch且進(jìn)行查詢20230506

    datagrip連接elasticsearch且進(jìn)行查詢20230506

    背景:公司要做一個(gè)es的數(shù)據(jù)存儲(chǔ),然后通過接口進(jìn)行查詢,我在docker下完成了ELK的安裝,但是對(duì)es還不是很了解,就想著用logstash加載完數(shù)據(jù)到es中后,在數(shù)據(jù)庫中對(duì)es進(jìn)行查詢,發(fā)現(xiàn)datagrip是支持連接es的,然后就想著把整個(gè)流程記錄下來吧 第一步:在datagrip中找到連接es的地

    2024年02月08日
    瀏覽(17)
  • ElasticSearch支持根據(jù)英文或者數(shù)字進(jìn)行模糊查詢

    ElasticSearch支持根據(jù)英文或者數(shù)字進(jìn)行模糊查詢

    提示:以下操作均在kibana7.7.0中操作。 根據(jù)es去查詢商品的名稱,中文查詢能查詢出數(shù)據(jù),但是只輸入部分英文或者數(shù)字,查詢不出數(shù)據(jù)。 es中的分詞器,只將全部的數(shù)字和英文做了分詞,即將他們看成一個(gè)單詞,所以,只輸入部分英文或者數(shù)字時(shí),不存在該部分的分詞,估

    2024年02月12日
    瀏覽(21)
  • Springboot 整合ElasticSearch 常用的插入查詢,模糊查詢,范圍查詢

    Springboot 整合ElasticSearch 常用的插入查詢,模糊查詢,范圍查詢

    repository.deleteById(id); } catch (Exception ex) { ex.printStackTrace(); return false; } return true; } public Dog saveDog(Dog dog) { try { Dog save = repository.save(dog); System.out.println(“結(jié)果:”+save.toString()); return save; } catch (Exception ex) { ex.printStackTrace(); return null; } } public Boolean saveDogAll(List dogsList) { try { reposit

    2024年04月22日
    瀏覽(22)
  • 解碼 Elasticsearch 查詢 DSL:利用 Elasticsearch 中的 has_child 和 has_parent 查詢進(jìn)行父子文檔搜索

    解碼 Elasticsearch 查詢 DSL:利用 Elasticsearch 中的 has_child 和 has_parent 查詢進(jìn)行父子文檔搜索

    今天,讓我們深入研究 has_child 查詢和 has_parent 查詢,這將幫助我們將 2 個(gè)不同的文檔組合到一個(gè)索引中,從而使我們能夠?qū)⑺鼈兣c關(guān)系關(guān)聯(lián)起來。 這樣做會(huì)對(duì)我們搜索相關(guān)文檔時(shí)有很大幫助。 在使用 has_child 及 has_parent 這種關(guān)系時(shí),我們必須使用 join 數(shù)據(jù)類型。更多有關(guān)

    2024年02月02日
    瀏覽(22)
  • ElasticSearch系列 - SpringBoot整合ES:組合多個(gè)查詢條件 bool 查詢

    01. ElasticSearch 布爾查詢是什么? 在實(shí)際應(yīng)用中,我們很有可能會(huì)查詢多個(gè)值或字段。 一個(gè) bool 查詢由三部分組成: must:所有的語句都必須(must) 匹配,與 AND 等價(jià)。 must_not:所有的語句都不能(must not)匹配,與 NOT 等價(jià)。 should:至少有一個(gè)語句要匹配,與 OR 等價(jià)。 02.

    2023年04月08日
    瀏覽(28)
  • Springboot整合Elasticsearch 7.X 復(fù)雜查詢

    Springboot整合Elasticsearch 7.X 復(fù)雜查詢

    這里使用Springboot 2.7.12版本,Elasticsearch為7.15.0。 導(dǎo)入依賴 yaml文件配置: 構(gòu)建實(shí)體類,這里為商品的SKU屬性表 構(gòu)建service層進(jìn)行復(fù)雜查詢:指定條件查詢,聚合查詢,分頁查詢,排序查詢,高亮等等 接口測(cè)試: 查詢?nèi)缦拢?? ? ?

    2024年02月03日
    瀏覽(20)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包