【发布时间】:2017-10-04 04:59:00
【问题描述】:
我正在尝试使用 Elastic Search 实现搜索,但遇到了一些问题:
我有什么
我正在尝试实现 ElasticSearch 我有 2 个字段:
1) 搜索词(文本字段)
2) 城市名称(文本字段)
现在我想要的是,如果用户输入两个值,那么它必须同时搜索(AND 条件),否则如果用户输入搜索词,那么它只搜索搜索词,或者如果城市则只搜索城市。
我在做什么
"bool" : {
"should": [
{
"multi_match": {
"query": '"'+keyword.toLowerCase()+'"',
"fields":
[
"title", "desc"
]
}
},
{
"match":
{
"city": city.toLowerCase()
}
}
],
}
但它不起作用,它正在使用 OR 进行搜索。
非常感谢任何帮助。
提前致谢
兰德尔
【问题讨论】:
-
您可以查看此elastic.co/guide/en/elasticsearch/reference/current/… 的查询字符串。
标签: elasticsearch elasticsearch-5