• (12)ElasticSearch 基本查询(Query查询)


      1、数据准备

    PUT /lib
    {
        "settings":{
            "number_of_shards":3,
            "number_of_replicas":0
          },
            "mappings":{
                "user":{
                    "properties":{
                        "name":{"type":"text"},
                        "address":{"type":"text"},
                        "age":{"type":"integer"},
                        "interests":{"type":"text"},
                        "birthday":{"type":"date"}
                    }
                }
            }
    }
    put /lib/user/1
    {
        "name":"zhaoliu",
        "address":"hei long jiang sheng tie ling shi",
        "age":50,
        "birthday":"1970-12-12",
        "interests":"xi huang hejiu,duanlian,lvyou"
    }
    
    put /lib/user/2
    {
        "name":"zhaoming",
        "address":"bei jing hai dian qu qing he zhen",
        "age":20,
        "birthday":"1998-10-12",
        "interests":"xi huan hejiu,duanlian,changge"
    }
    
    put /lib/user/3
    {
        "name":"lisi",
        "address":"bei jing hai dian qu qing he zhen",
        "age":23,
        "birthday":"1998-10-12",
        "interests":"xi huan hejiu,duanlian,changge"
    }
    
    put /lib/user/4
    {
        "name":"wangwu",
        "address":"bei jing hai dian qu qing he zhen",
        "age":26,
        "birthday":"1998-10-12",
        "interests":"xi huan biancheng,tingyinyue,lvyou"
    }
    
    put /lib/user/5
    {
        "name":"zhangsan",
        "address":"bei jing chao yang qu",
        "age":29,
        "birthday":"1988-10-12",
        "interests":"xi huan tingyinyue,changge,tiaowu"
    }

      2、查询

      GET /lib/user/_search?q=name:lisi  查询name是lisi的记录

      GET /lib/user/_search?q=interests:changge&sort=age:desc  查询兴趣包含唱歌的,并且按照年龄倒序排序

      term、terms查询:

      term 查询会去倒排索引中寻找确切的term,它并不知道分词器的存在,这种查询适合keyword、numeric、date。

      term:查询某个字段里含有某个关键词的文档

      (1)查询name是zhaoliu的:

    GET /lib/user/_search/
    {
        "query":{
            "term":{"name":"zhaoliu"}
        }
    }

      (2)查询兴趣包含喝酒或者唱歌的:

    get /lib/user/_search
    {
        "query":{
            "terms":{
                "interests":["hejiu","changge"]
            }
        }
    }

      (3)查询兴趣包含喝酒或者唱歌的,下标从0开始,取出两个:

    get /lib/user/_search
    {
        "from":0,
        "size":2,
        "query":{
            "terms":{
                "interests":["hejiu","changge"]
            }
        }
    }

       (4)显示版本号

    GET /lib/user/_search
    {
      "version":true,
      "query":
        {
          "terms":{"interests":["hejiu","changge"]}
        }
    }
  • 相关阅读:
    eclipse里打包时排除.svn目录
    UltraEdit搭建python IDE环境+设置快捷键
    Window下 VC2008 Express 配置 OpenGL
    N73 getRGB createRGBImage 透明色的问题
    Iphone UIApplication openURL能帮助你运行Maps,SMS,Browser, Calling甚至其他的应用程序
    Eclipse配置KEmulator
    洛谷P1439 【模板】最长公共子序列 (DP,离散化)
    Codeforces Round #642 (Div. 3) D. Constructing the Array (优先队列)
    Codeforces #6241 div2 C. Orac and LCM (数学)
    洛谷P1469 找筷子 (位运算)
  • 原文地址:https://www.cnblogs.com/javasl/p/11405387.html
Copyright © 2020-2023  润新知