检索弹性搜索中存储的数据

时间:2017-12-12 06:02:55

标签: elasticsearch search

您好我的映射如下,

    "mappings":{
        "classes": {
            "properties": {
                "class": {"type": "integer"},
                "students": {
                    "type": "nested",
                    "properties": {
                        "roll_id": {"type": "integer"},
                    "student_name": {
                        "type": "nested",
                          "properties": {
                            "first_name": { "type": "text" },
                            "last_name":  { "type": "text" }
                          }
                        },
                        "performance_grade": {"type": "text"},
                        "location": {"type": "text"},
                        "contact_number": {"type": "integer"},
                    }
                }
            }
        }
    }

我想搜索三个案例:

  1. 找到11级成绩为D

  2. 的学生
  3. 找到11级成绩为D级和位置的学生 是'纽约'

  4. 找到名字为'Tim'的所有学生。

  5. 你可以看到我想过滤学生是否可能?

1 个答案:

答案 0 :(得分:0)

您的查询是可能的

  • 如果您按位置过滤,则应使用type keyword或使用词组查询
  • performance_grade您可以使用范围过滤器的数字类型
  • 联系电话号码应使用关键字