匹配查询和查询字符串查询有什么区别?说,我有以下查询,它们是否具有相同的功能?
GET /_search
{
"query": {
"match" : {
"_all" : "this is a test"
}
}
}
和
GET /_search
{
"query": {
"query_string" : {
"query" : "this is a test",
}
}
}
考虑到使用query_string而不指示任何特定字段的事实,将自动使用_all字段
答案 0 :(得分:1)
来自elasticsearch documentation
比较匹配查询到query_string / field
匹配查询系列确实如此 不经过“查询解析”过程。它不支持字段 名称前缀,通配符或其他“高级”功能。对于 这个原因,它失败的可能性非常小/不存在,并且 它提供了一个很好的行为,只需分析和 将该文本作为查询行为运行(通常是文本搜索 盒子)。此外,phrase_prefix类型可以提供一个伟大的“和你一样 输入“自动加载搜索结果的行为。