gpt4 book ai didi

python - Elasticsearch构建动态查询-Python

转载 作者:行者123 更新时间:2023-12-03 01:55:56 25 4
gpt4 key购买 nike

关于elasticsearch-py API的新手问题。我建立了名称,地址,电话号码等记录的索引,并且可以使用python客户端进行查询
例如。

`elasticsearch.search(index = "index_name", q= 'first_name:"JOHN"')` 

并得到适当的结果
但是,我想将查询作为字符串参数
first_name = "JOHN"
qu = "first_name:".join(first_name)
elasticsearch.search(index = 'index_name', q = qu)

并且查询失败。有没有更好的方法来进行此类动态查询?

最佳答案

我通常将搜索查询构建为请求正文搜索。
https://www.elastic.co/guide/en/elasticsearch/reference/current/search-request-body.html

下面的例子:

searchdata = essearch.search(index=indexname, body= {
"query": {
"filtered": {
"query": {
"query_string": {
"query": "name:fred"
}
},
"filter": {
"bool": {
"must": [

{
"exists": {
"field": "fieldname"
}
},
{
"exists": {
"field": "secondfieldname"
}
}

]
}
}
}
},
"size": 5000,
"sort": [
{
"loggeddate": {
"order": "desc"
}
}
]
}
)

关于python - Elasticsearch构建动态查询-Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36682849/

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