ElasticSearch(十一) Term level Queries JAVA API

一、term query 精确查询 不分词

termQuery(
        "name",   "kimchy");  

二、terms query  相当于 IN 查询

termsQuery("tags",  "blue", "pill"); 

三、range query  范围查询

rangeQuery("price")                                          
    .from(5)                                                 
    .to(10)                                                  
    .includeLower(true)                                      
    .includeUpper(false);  

rangeQuery("age")                                             
    .gte("10")                                                
    .lt("20");      

四、exists query  类似于SQL语句中的IS_NULL

exists 和 missing 过滤可以用于查找文档中是否包含指定字段或没有某个字段,类似于SQL语句中的IS_NULL条件. 

existsQuery("name");  


    "exists":   { 
        "field":    "title" 
    } 

这两个过滤只是针对已经查出一批数据来,但是想区分出某个字段是否存在的时候使用。

五、prefix query 前缀查询

prefixQuery(
        "brand",  "heine"); 

六、wildcard query 通配符查询

wildcardQuery(
        "user", "k?mch*");

七、regexp query  正则查询

regexpQuery(
        "name.first", "s.*y"); 

八、fuzzy query 近似查询

 

九、type query  类型查询

typeQuery("my_type");

十、ids query  指定ID查询

idsQuery("my_type", "type2").addIds("1", "4", "100");

idsQuery().addIds("1", "4", "100");

转载于:https://www.cnblogs.com/xiaocandou/p/8119548.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值