zoukankan      html  css  js  c++  java
  • 6.range filter进行范围过虑

    主要知识点

    • 掌握range filter的用法

       

    range filter就是查找一个范围内的数据,相当于sql中的betwen语法,以下是几个示例:

       

    1、为帖子数据增加浏览量的字段

       

    POST /forum/article/_bulk

    { "update": { "_id": "1"} }

    { "doc" : {"view_cnt" : 30} }

    { "update": { "_id": "2"} }

    { "doc" : {"view_cnt" : 50} }

    { "update": { "_id": "3"} }

    { "doc" : {"view_cnt" : 100} }

    { "update": { "_id": "4"} }

    { "doc" : {"view_cnt" : 80} }

       

    2、搜索浏览量在30~60之间的帖子

       

    GET /forum/article/_search

    {

    "query": {

    "constant_score": {

    "filter": {

    "range": {

    "view_cnt": {

    "gt": 30,

    "lt": 60

    }

    }

    }

    }

    }

    }

    3、搜索发帖日期在最近1个月的帖子

       

    再插入一条数据。

    POST /forum/article/_bulk

    { "index": { "_id": 5 }}

    { "articleID" : "DHJK-B-1395-#Ky5", "userID" : 3, "hidden": false, "postDate": "2017-03-01", "tag": ["elasticsearch"], "tag_cnt": 1, "view_cnt": 10 }

       

    对特定时间范围进行搜索

    GET /forum/article/_search

    {

    "query": {

    "constant_score": {

    "filter": {

    "range": {

    "postDate": {

    "gte":"2017-01-10||-30d"

    }

    }

    }

    }

    }

    }

       

    对当前时间之前的一段时间范围进行搜索

    GET /forum/article/_search

    {

    "query": {

    "constant_score": {

    "filter": {

    "range": {

    "postDate": {

    "gt": "now-30d"

    }

    }

    }

    }

    }

    }

  • 相关阅读:
    Ajax数据爬取
    数据存储之非关系型数据库存储----MongoDB存储(Python操作)
    数据存储之关系型数据库存储---MySQL存储(Python操作)
    数据存储之文件存储
    使用pyquery
    使用Beautiful Soup
    使用XPath
    正则表达式和python中的re模块
    Android优化之ViewPager的懒加载
    开源框架Slidingmenu的基本使用
  • 原文地址:https://www.cnblogs.com/liuqianli/p/8483951.html
Copyright © 2011-2022 走看看