gpt4 book ai didi

elasticsearch - 如何使用 “query_string”查询文档并过滤出列表字段的第一个元素

转载 作者:行者123 更新时间:2023-12-02 23:49:31 24 4
gpt4 key购买 nike

在我的Elasticsearch中,我有一个像这样的文档:

          "field_4" : [
"ip_address",
"127.0.0.1"
],
"field_1" : 6522000300012,
"field_2" : "asdfa",
"field_26" : [
"address",
"HongKong"
]

我的 body 是:
body = {
"query": {
"bool": {
"must": [{"query_string": {"query": "*p*"}}]
}
}
}

现在,我的查询可以找到所有带有字符串“P”的字段,但是对于列表类型字段,我不想查询它们的第一个元素。

我的意思是无法查询以上文档,因为字符串“p”仅存在于列表类型filed_4的第一个元素中。

有没有一种方法可以编写查询,而该查询在Elasticsearch中不包含列表的第一个元素?
谢谢!

最佳答案

Elasticsearch query_string支持fields来查询特定字段。因此,您只能指定要查询的字段

body = {
"query": {
"bool": {
"must": [{"query_string": {"query": "*p*","fields":["field_1","field_2","field_26"]}}]
}
}
}

关于elasticsearch - 如何使用 “query_string”查询文档并过滤出列表字段的第一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58533641/

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