0
我正在將數據存儲在elasticsearch數據庫中,並試圖查詢它,並按數字範圍進行過濾。使用範圍過濾器和內部字段的未知名稱在Elasticsearch中嵌套搜索查詢
這是最小化的文檔的結構在我的數據庫:
"a": {
"b": {
"x": [1, 2, 3, 4], // note: x, y and z are not compulsory
"y": [2, 3, 4], // some documents can have only x or z or maybe x and z etc.
"z": [5, 6]
}
}
現在,我想我的查詢返回的所有文件,其中存在任何「B」的子場中至少一個數字範圍在2和4之間。重要的是,我不知道「b」的所有子字段的名稱。
我想出了查詢:
POST /i/t/_search
{
"query": {
"query_string": {
"fields": ["a.b.*"],
"query": "number:[2 TO 4]"
}
}
}
查詢不漲的錯誤,也沒有返回結果。我甚至不確定,哪種搜索查詢甚至會最適合這樣的任務。我只使用查詢字符串,因爲它是我發現的唯一一個可以加入未知字段名稱和範圍的地方。