1

次のようなネストされたフィルターがあります。

search = search.filter(
                'nested', 
                path=path, 
                filter=F('bool', must=queries),
                inner_hits={'sort': ['p', 'd']}
            )

全体に OR フィルターを追加したいと思います。したがって、X またはこのネストされたクエリに一致します。

ES1.7を使用しています

4

1 に答える 1

1

もう少し辛抱すると、次のようになりました。

search = search.filter(
                'or',
                [F(
                    'nested',
                    path=path,
                    filter=F('bool', must=queries),
                    inner_hits={'sort': ['p', 'd']}
                ), F('bool', must=or_queries)]
            )

これはトリックを行うようです..

于 2016-05-27T14:29:00.763 に答える