1

「missing」パラメーターを使用するのは初めてで、期待どおりの結果が得られないため、何か間違っているかどうかわかりません。

不足している条件がこのクエリに正しく統合されているかどうか教えてください。5 つのファセットを作成し、小数緯度フィールドが「インデックスに設定されていない」か、その値が null であるオカレンスのみをカウントします。

curl -XGET http://my_url:9200/idx_occurrence/Occurrene/_search?pretty=true -d '{
    "filter": {
        "missing": {
            "field": "decimallatitude",
            "existence": true,
            "null_value": true
        }
    },
    "query": {
        "query_string": {
            "fields": ["dataset"],
            "query": "3",
            "default_operator": "AND"
        }
    },
    "facets": {
        "test": {
            "terms": {
                "field": ["kingdom_interpreted"],
                "size": 5
            }
        }
    }
}
'
4

1 に答える 1

1

検索 API - フィルターページでわかるように、フィルターはクエリ結果に適用されますが、ファセットには適用されません。ファセットで機能させるには、代わりにフィルター処理されたクエリを使用してみてください

curl -XGET http://my_url:9200/idx_occurrence/Occurrene/_search?pretty=true -d '{
    "query": {
        "filtered": {
            "filter": {
                "missing": {
                    "field": "decimallatitude",
                    "existence": true,
                    "null_value": true
                }
            },
            "query": {
                "query_string": {
                    "fields": ["dataset"],
                    "query": "3",
                    "default_operator": "AND"
                }
            }
        }
    },
    "facets": {
        "test": {
            "terms": {
                "field": ["kingdom_interpreted"],
                "size": 5
            }
        }
    }
}
'
于 2012-10-09T16:53:19.620 に答える