• ElasticSearch Query DSL(一)


    高级查询

    说明

    ​ ES中提供了一种强大的检索数据方式,这种检索方式称之为Query DSL ,Query DSL是利用Rest API传递JSON格式的请求体(Request Body)数据与ES进行交互,这种方式的丰富查询语法让ES检索变得更强大,更简洁

    语法

    1. # GET /索引名/_doc/_search {json格式请求体数据}
    2. # GET /索引名/_search {json格式请求体数据}

    测试数据

    1. # 1.创建索引 映射
    2. PUT /products/
    3. {
    4. "mappings": {
    5. "properties": {
    6. "title":{
    7. "type": "keyword"
    8. },
    9. "price":{
    10. "type": "double"
    11. },
    12. "created_at":{
    13. "type":"date"
    14. },
    15. "description":{
    16. "type":"text"
    17. }
    18. }
    19. }
    20. }
    21. # 2.测试数据
    22. PUT /products/_doc/_bulk
    23. {"index":{}}
    24. {"title":"iphone12 pro","price":8999,"created_at":"2020-10-23","description":"iPhone 12 Pro采用超瓷晶面板和亚光质感玻璃背板,搭配不锈钢边框,有银色、石墨色、金色、海蓝色四种颜色。宽度:71.5毫米,高度:146.7毫米,厚度:7.4毫米,重量:187克"}
    25. {"index":{}}
    26. {"title":"iphone12","price":4999,"created_at":"2020-10-23","description":"iPhone 12 高度:146.7毫米;宽度:71.5毫米;厚度:7.4毫米;重量:162克(5.73盎司) [5] 。iPhone 12设计采用了离子玻璃,以及7000系列铝金属外壳。"}
    27. {"index":{}}
    28. {"title":"iphone13","price":6000,"created_at":"2021-09-15","description":"iPhone 13屏幕采用6.1英寸OLED屏幕;高度约146.7毫米,宽度约71.5毫米,厚度约7.65毫米,重量约173克。"}
    29. {"index":{}}
    30. {"title":"iphone13 pro","price":8999,"created_at":"2021-09-15","description":"iPhone 13Pro搭载A15 Bionic芯片,拥有四种配色,支持5G。有128G、256G、512G、1T可选,售价为999美元起。"}

    常见检索

    查询所有[match_all]

    match_all关键字: 返回索引中的全部文档

    1. GET /products/_search
    2. {
    3. "query": {
    4. "match_all": {}
    5. }
    6. }

    关键词查询(term)

    term 关键字: 用来使用关键词查询

    1. GET /products/_search
    2. {
    3. "query": {
    4. "term": {
    5. "price": {
    6. "value": 4999
    7. }
    8. }
    9. }
    10. }

    NOTE1: 通过使用term查询得知ES中默认使用分词器为标准分词器(StandardAnalyzer),标准分词器对于英文单词分词,对于中文单字分词

    NOTE2: 通过使用term查询得知,在ES的Mapping Type 中 keyword , date ,integer, long , double , boolean or ip 这些类型不分词,只有text类型分词

  • 相关阅读:
    目标检测(7)—— YOLO系列V3
    “幂等”不等于“分布式锁”,也不得不考虑返回值
    如何设计一个高质量API接口思路
    HarmonyOS—低代码开发Demo示例
    硬之城携手阿里云Serverless应用引擎(SAE)打造低代码平台
    【OBS】P B 丢帧阈值 buffer_duration_usec
    WinEdt引用参考文献
    mysql按月分组并补齐
    【OneDrive篇】OneDrive禁用个人保管库(网页端)
    webpack 之 构建包设计
  • 原文地址:https://blog.csdn.net/Leon_Jinhai_Sun/article/details/126685371