用户想要按姓名搜索某人,并输入如下内容:
所有这些都应与“Peter Lustig”相匹配。
使用具有firstname和lastname split的默认设置对数据建立索引。
我尝试使用bool“should”查询使用默认前缀搜索,将查询字词拆分为空格。
bool
should
prefix
firstName Pe
prefix
name Pe
prefix
firstName Lu
prefix
name Lu
但我没有得到任何结果。实现这一目标的最佳方法是什么?
答案 0 :(得分:1)
您可以尝试以下查询:;
{
"query": {
"bool": {
"should": [
{
"match_phrase_prefix": {
"firstName": "Peter"
}
},
{
"match_phrase_prefix": {
"firstName": "Lu"
}
},
{
"match_phrase_prefix": {
"lastName": "Peter"
}
},
{
"match_phrase_prefix": {
"lastName": "Lu"
}
}
]
}
}
}