Elasticsearch 的`intervals`查询详解
`intervals`查询是 Elasticsearch 中一种强大的查询工具,用于基于术语的顺序和接近度来匹配文档。它特别适合需要精确控制术语位置和顺序的场景,例如法律或专利搜索。从 Elasticsearch v8.16 开始,`intervals`查询得到了进一步增强,支持更多功能,如`range`和`regexp`规则。
1.`intervals`查询的基本结构
`intervals`查询的基本结构如下:
```json
{
"query": {
"intervals": {
"<field>": {
"<rule>": {
"intervals": [
{ "match": { "query": "<text>" } }
]
}
}
}
}
}
```
• `<field>`:指定要搜索的字段。
• `<rule>`:定义匹配规则,如`match`、`all_of`、`any_of`等。
• `<text>&