gpt4 book ai didi

python - 查询未返回正确的数据

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

以下是一个查询,该查询应返回当前日期整个名为“mike”的命名用户的所有信息。 (如您所见,我正在使用通配符来使所有名为mike的用户以及mike之后要我想要的任何名称。)

因此返回的是当前日期的数据,这很好,但是通配符不起作用,并且正在为所有用户(不仅是Mike)带回数据。

有人可以帮我吗,我真的需要通配符才能工作。

我的代码:

GET_search
{
"_source": [
"N"
],
"query": {
"bool": {
"should": [
{
"wildcard": {
"N": "mike*"
}
}
],
"must": [
{
"range": {
"VT": {
"gte": "now/d",
"lte": "now+1d/d"
}
}
}
]
}
}
}

最佳答案

您的问题不是wildcard查询,而是它在should列表中的事实。在the bool query docs中,它说:

If the bool query is in a query context and has a must or filter clause then a document will match the bool query even if none of the should queries match.



那是你的情况。您只需将通配符查询移至必须列表即可解决此问题,如下所示:
{
"_source": [
"N"
],
"query": {
"bool": {
"must": [
{
"range": {
"VT": {
"gte": "now/d",
"lte": "now+1d/d"
}
}
},
{
"wildcard": {
"N": "mike*"
}
}
]
}
}
}

保留 should并将 minimum_should_match添加为1也可以,但是我想不出这样做的任何理由。

关于python - 查询未返回正确的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46767577/

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