我正在使用 Elasticsearch 8,假設我們的索引中有兩個檔案:
[
{
"field1": "value1",
"field2": [
{
"nestedField1": "nested value 1",
"nestedField2": "rock paper scissors"
},
{
"nestedField1": "nested value 2",
"nestedField2": "paper scissors"
}
]
},
{
"field1": "value2",
"field2": [
{
"nestedField1": "nested value 1",
"nestedField2": "rock scissors"
},
{
"nestedField1": "nested value 2",
"nestedField2": "scissors"
}
]
}
]
現在我想撰寫一個查詢,以便我們可以獲取field2.nestedField2不包含單詞的記錄paper。
以下是我到目前為止的內容:
{
"query": {
"bool": {
"must": {
"match_all": {}
},
"filter": {
"bool": {
"must_not": [
{
"match": {
"field2.nestedField2": "paper"
}
}
]
}
}
}
}
}
我似乎無法讓它作業。有人可以幫我指出我哪里出錯了嗎?
uj5u.com熱心網友回復:
查詢塊不正確。嵌套欄位不能這樣搜索。你可以在這里找到你的答案https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-nested-query.html。
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/425455.html
標籤:弹性搜索
