我正在尝试为 elasticsearch 编写一个自定义原始查询,我需要在包含多个由空格分隔的 ID 的字符串中组合 ID 进行搜索。
搜索字段如下所示:
文件 1
"sentence": [
"1060 1764 1769 1770 1772 2807 2808 3570",
"1101 3402 3403",
"1101 1764 1769 1770 1772",
"1001 1060 1099 1100 1101 2806 2807 2808 3570"
]
文件 2
"sentence": [
"1060 2806 2807 2808 3570",
"1101 3402 3403",
"1101 1764 1769 1770 1772",
"1001 1060 1488 1489 1490 2806 2807 2808 3570"
]
例如,当使用参数“1060 和 1101”搜索时,它应该只返回文档 1,因为它在单个字符串中包含这两个值。尽可能避免使用嵌套查询。
尝试使用 bool 必须匹配查询、匹配短语查询、查询字符串、简单查询字符串、bool 必须匹配过滤器术语查询、正则表达式组合。一切都返回了一些东西,但不完全是我需要的。