ElasticSearch 查询语法

2019-06-10  本文已影响0人  HAO延WEI

1.查询集群的基本运行状况-health

curl -XGET 'localhost:9200/_cat/health?v&pretty'

2.集群的节点信息

curl -XGET 'localhost:9200/_cat/nodes?v&pretty'

3.集群 中的索引信息

curl -XGET 'localhost:9200/_cat/indices?v&pretty'

4.根据id查询所需数据

 curl -XGET  'http://localhost:9200/index/_type/id?'
"""
语法:ip +/索引/type/id?
"""

5.查询所有数据(浏览器默认返回10条数据)

"""
浏览器查询
"""
http://localhost:9200/index/type/_search?q=*

curl 查询

$ curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{
"query": { "match_all": {} }
}'

6.分页查询 (from, size)

from 偏移,默认为0
size 返回的结果数,默认为10

curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{
"query": { "match_all": {} },
"from":1,
"size":2
}'

7.多词条查询(term,terms)

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

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

curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{
  "query": {
     "term": {
        "title":   "blog"
    }
  }
}'

9.指定查询结果的字段 (_source)

curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{
        "query":{
            "match_all":{}
        },
      "_source":["product","account"],
"from": 1,"size": 1   
}'

10.指定查询范围(range)

范围查询(range)即返回指定范围的文档,多用于数值型和日期型中。

curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{
    "query":{
        "range":{
            "publish_time":{
                "lte":"2019/05/24"
            }
        }
    },
    "from": 1,
    "size": 1   
}'
  • gte :大于或等于
  • gt :大于
  • lte :小于或等于
  • lt :小于

11.排序(sort)

curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{
    "query": { 
        "match_all": {} 
    },
    "sort":[
        {"publish_time":"desc"},
        {"id":"asc"}
    ]
}'

12.prefix前缀匹配查询

curl -XGET 'localhost:9200/index/type/_search?pretty' -d '
{"query": 
  {"prefix":{
    "ad_type":{
        "value":"C"  # 查询ad_type以C开头的内容
      }
    }
  }
}'

13. 关键词查询

"""
# 查询索引dc-spider-platform-dcdapp_new_text-2020中 title 带“都说CVT”的数据
"""
GET /dc-spider-platform-dcdapp_new_text-2020/_search
{
  "query": {
    "bool":{
      "must": [
        {
          "query_string": {
            "default_field": "title", 
            "query": "都说CVT"
          }
        }
      ]
    }
  },

  "from": 0,
  "size": 1
}
上一篇下一篇

猜你喜欢

热点阅读