gpt4 book ai didi

elasticsearch - Python Elasticsearch-DSL过滤器,用于值列表中的一个匹配项

转载 作者:行者123 更新时间:2023-12-03 01:35:14 26 4
gpt4 key购买 nike

我看到了一些实际发布的帖子,但没有一个与我的确切问题相符。

将Python 2.7与Elasticsearch-dsl(6.3,这也是我的Elasticsearch版本)一起使用。

我想做类似的事情,
s = Search(using=elastic_conn, index='my_index').filter("match", service_name=['exmp_name1', 'exmp_name2'])
但是,此语法不起作用。

我希望取回所有带有service_name == 'exmp_name1'service_name == 'exmp_name2'的文档

我更喜欢使用过滤器上下文,而不是查询上下文,因为据我所知,它更快并且评分对我而言并不重要,只是绝对匹配(或不匹配)。

我该如何实现这种行为?

谢谢

最佳答案

好。我需要做的只是通过terms过滤,而不是match过滤。
terms语法支持多个值。

工作代码:
s = Search(using=elastic_conn, index='audit').filter("terms", service_name=['exmp_name1', 'exmp_name2'])

关于elasticsearch - Python Elasticsearch-DSL过滤器,用于值列表中的一个匹配项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53139722/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com