• elasticsearch 搜索语句入门


    elasticsearch 通过_search 接口提供查询支持

    碰到过这样奇葩的问题。是不是没有安装ik分词器就无法进行中文模糊匹配查询? 答案是当然支持 elasticsearch 本来就是一个搜索引擎没有语言限制 没有专门为english定制。接下来将在wildcard 和 match 查询的区别中为大家指明

     search 结构体如下

    {
    "query": {
    "match": {
    "xxxx": "广州"
    }
    },
    "size": 3,
    "aggs": {
    "NAME": {
    "AGG_TYPE": {}
    }
    },
    "from": 0,
    "sort": [
    {
    "FIELD": {
    "order": "desc"
    }
    }
    ],
    "_source": "{field}"
    }

    常用的一级字段 有 query 查询体   size 返回数目 aggs 聚合  from 翻页   sort 排序  _source 指定返回字段

    下面主要从介绍query 讲起

    1. match_all 查询

    值得是匹配_source 中所有字段进行倒排索引查询  就是 select * from table;  without any condition;

    2.match 正经的模糊匹配查询   select * from table  where filed like ‘%xxx%’;

    {
    "query": {
    "match": {
    "msg" : "广州 大世界"
    }
    }
    ,"size": 1
    }

    match 查询会将查询语句先进行分词,分成的词 如 广 州 大 世 界 五个查询默认是or 的关系 初非你手动指定operator  为 and , 或者指定要最小命中的词的个数 minimum_should_match

    {
    "query": {
    "match": {
    "body.msg" : {"query" : "广州 世界",
    "operator": "and"
    }
    }
    }
    ,"size": 1,
    "explain": true
    }

    3. match 短语匹配,默认没有中文分词

    {
    "query": {
    "match_pharse": {
    "msg" : "广州 大世界"
    }
    }
    ,"size": 1
    }

    4. multi_match 多字段匹配

    {
    "query": {
    "multi_match": {

    "fields": ["msg","header"],
    "query": "广州"

    }
    }
    ,"size": 1,
    "explain": true
    }

    可以转换为多字段like 相同内容, 同样也支持operator 为 and , 或者指定要最小命中的词的个数 minimum_should_match
    {
    "query": {
    "bool": {
    "should": [
    { "match": { "title": "quick brown fox" }},
    { "match": { "title.original": "quick brown fox" }},
    { "match": { "title.shingles": "quick brown fox" }}
    ]
    }
    }
    }

     5. term 查询 词匹配 查询 https://www.elastic.co/guide/en/elasticsearch/reference/6.6/query-dsl-common-terms-query.html#query-dsl-common-terms-query

    term 查询可以将 分词结果分为高频词和低频词,进行区别查询

  • 相关阅读:
    iOS面试题6.30总结
    关于外挂
    webstorm快捷方式
    HTML注释的一些规范
    认识Python
    正体复本术解决容易疲劳、不能持续集中精力工作-海淀区非物质文化遗产:#正体复本术#
    皮肤发痒的观察与思考
    win10不错的快捷键
    项目属性的target platform和target platform version到底是什么(vs2015开发windows驱动小记)
    玩Web虎-运行时受保护文件不可复制
  • 原文地址:https://www.cnblogs.com/leleyao/p/13416486.html
Copyright © 2020-2023  润新知