我有以下代码在_all字段中查询,包括第一个,最后一个和出生日期:
POST /user/_search
{
"query": {
"match": {
"_all": {
"query": "John Doe 08/11/1992",
"operator": "and"
}
}
}
}
它工作正常,但我有一个特殊情况,如果您查询的日期不是记录中的匹配但是是1/11/1111那么它应该返回用户匹配。例如:
POST /user/_search
{
"query": {
"match": {
"_all": {
"query": "John Doe 11/11/111",
"operator": "and"
}
}
}
}
即使正确的生日是08/11/1992,也应找到该文件。如何处理这个例外?
答案 0 :(得分:0)
使用'或'在查询中。如果这返回到许多不相关的结果,则尝试Bool Query并拆分名称和日期。然后,您可以匹配确切的名称,并且仅匹配日期的部分。