我有一个索引, 其中有一个文本字段,比如说“内容” 我还有另一个字段,比如说“field1”
我想要的是: 内容包含“searchterm”且 field1 恰好是“foo”或“bar”的文档。
simple_query_string 在搜索文档方面表现出色。 但我如何实现这个组合呢?这可能吗?
布尔查询无法正常用于文本搜索。(或者我理解它完全错误)
我需要 simple_query_string 运算符(查询字符串本身的运算符
找到了答案。
问题是,我需要 simple_search_query 运算符,因此布尔查询不太适合我的用例。
因此,可以说“query_string”中有一个“手动 simple_search_query 运算符”。
这是我的解决方案:
GET test_index/_search
{
"query" : {
"query_string" : {
"query" : "content:(\"exact search string with spaces\") AND field1:(\"foo\" OR \"bar\")"
}
}
}
但是现在,我需要一个后端翻译。因为我希望我的用户通过减号来否定查询。 (例如:foo bar -tar)foo 和/或 bar 但不是 tar
有没有更好的实现方式?