我需要匹配用户在 flex 搜索中跨2个属性传递的输入,并且它必须是通配符搜索。
我正在使用AWS-ES 6.4版
当我查询一个属性时,结果还可以,但是当我同时包含这两个属性时,它会给我400状态代码。
有效的查询:
{"query":
{"bool": {"should": [
{"wildcard": { "phone1.searchTerm": "*1234*" }}
]}}
}
查询失败:(phone1和phone2都)
是否在应/必须条件中是否只有一个通配符有约束力?
{"query":
{"bool": {"should": [
{"wildcard": { "phone1.searchTerm": "*1234*" }} ,
{"wildcard": { "phone2.searchTerm": "*1234*" }} ]}}
}
这与 flex 搜索版本有关吗?
最佳答案
它将如下工作:
{
"query": {
"bool": {
"must": [
{
"wildcard": {
"Author": "roh*"
}
},
{
"wildcard": {
"Title": "q*"
}
}
]
}
}
}
关于amazon-web-services - Elasticsearch查询中多列上的通配符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52622819/