zoukankan      html  css  js  c++  java
  • Elasticsearch 类比 mysql 实现 in and like or

    常用的查询方式类比mysql

    <dependency>
        <groupId>org.elasticsearch</groupId>
        <artifactId>elasticsearch</artifactId>
        <version>5.6.1</version>
    </dependency>

    <dependency>
        <groupId>org.elasticsearch.client</groupId>
        <artifactId>transport</artifactId>
        <version>5.6.1</version>
    </dependency>    
    • and
    select * from user where about='中华人民共和国' and firstName=‘张’
    
    QueryBuilders.boolQuery().must(QueryBuilders.termQuery("about","中华人民共和国")).must(QueryBuilders.termQuery("firstName","张"))
    • or
    select * from user where about='中华人民共和国' and firstName=‘王’
    QueryBuilders.boolQuery().should(QueryBuilders.termQuery("about","中华人民共和国")).should(QueryBuilders.termQuery("firstName","王"))
    • and or 连用
    select * from user where  firstName='张' and( firstName='王’ or about='中华人民共和国公民')
    
    QueryBuilders.boolQuery()
                            .must(QueryBuilders.termQuery("firstName","张"))
                            .must(QueryBuilders.boolQuery()
                                            .should(QueryBuilders.termQuery("firstName","王"))
                                            .should(QueryBuilders.termQuery("about","中华人民共和国公民"))
    • like
    select * from user where about like '%中华%'

    QueryBuilders.wildcardQuery("about","*中华*")
    • in
    select * from user where about in ('中华人民共和国','中华人民共和国公民')
    
    QueryBuilders.boolQuery()
                            .should(QueryBuilders.termQuery("about","中华人民共和国"))
                            .should(QueryBuilders.termQuery("about","中华人民共和国公民"))
    故乡明
  • 相关阅读:
    封装ajax---基于axios
    XHR的理解和作用
    params和 query区别
    HTTP请求交互的基本过程
    http3次握手
    ES6----import * as 用法
    微信小程序真机调试:Setting data field "XXX" to undefined is invalid
    webpack详解-----optimization
    node跨域
    shell 的 功能语句--1
  • 原文地址:https://www.cnblogs.com/luweiweicode/p/14072297.html
Copyright © 2011-2022 走看看