这是我的测试:
使用匹配
{"query":{"bool":{"must":[{"match":{"name":{"query":"ka"}}},{"term":{"kind":"k1 "}}]}}}
0 次点击
然后使用 query_string
{"query":{"bool":{"must":[{"query_string":{"fields":["name"],"query":"*ka*"}},{"term":{ "kind":"k1"}}]}}}
大约 1000+ 次点击
一些名称,例如“katyperry”、“KathleenLights”等。它们无法通过使用找到match
另外,还有一个更让我疑惑的例子是,当我match用来搜索电子邮件时
{"query": {"bool": {"must": [{ "match":{"email":"testname@gmail.com"}}]}}}
ES 返回所有包含“gmail.com”的电子邮件
那么在这些情况下“匹配”如何工作?