1

インデックスにファセットを含めるのに問題があります。基本的に、「会社」という特定のファセットの詳細を別の配列で取得したい

多くのクエリを試しましたが、すべてファセット配列の下でファセット全体を取得します。ファセット配列内の特定のファセットのみを取得するにはどうすればよいですか。

私のインデックスはhttps://gist.github.com/4015817です

私を助けてください。私はここでひどく立ち往生しています

4

1 に答える 1

2

データ構造がどれほど複雑かを考えると、この情報を抽出する簡単な方法は、スクリプトフィールドを使用することかもしれません。

curl "localhost:9200/index/doc/_search?pretty=true" -d '{
    "query" : {
        "match_all" : {

        }
    },
    "script_fields": {
        "entity_facets": {
            "script": "result=[];foreach(facet : _source.Categories.Types.Facets) {if(facet.entity==entity) result.add(facet);} result",
            "params": {
                "entity": "Country"
            }

        },
        "first_facet": {
            "script": "_source.Categories.Types.Facets[0]"    
        }

    }
}'
于 2012-11-06T00:39:14.020 に答える