搜索数据语法示例 本文将介绍一些基础且常用的搜索语法示例,帮助你快速上手天翼云云搜索服务OpenSearch 的数据搜索功能。 OpenSearch 是一个强大的搜索引擎,支持丰富的查询语法,能够满足各种复杂的搜索需求。 基础搜索语法 简单搜索 最简单的搜索方式是直接在指定的索引中搜索包含特定关键字的文档。 GET /myindex/search { "query": { "match": { "content": "OpenSearch" } } } 以上查询会在 myindex 索引中搜索 content 字段中包含 "OpenSearch" 的文档。 匹配所有文档 如果你想匹配索引中的所有文档,可以使用 matchall 查询。 GET /myindex/search { "query": { "matchall": {} } } 这个查询会返回 myindex 中的所有文档。 精确匹配 (Term Query) 精确查询用于精确匹配指定字段的内容,适用于关键词搜索。 GET /myindex/search { "query": { "term": { "status": "active" } } } 该查询会返回 status 字段值为 active 的文档。 组合查询 布尔查询 (Bool Query) 布尔查询允许将多个查询组合在一起。它支持 must、should、mustnot 和 filter 子句,分别对应 AND、OR、NOT 和过滤条件。 GET /myindex/search { "query": { "bool": { "must": [ { "match": { "content": "OpenSearch" } }, { "term": { "status": "active" } } ], "filter": [ { "range": { "date": { "gte": "20240101" } } } ] } } } 此查询会返回满足以下条件的文档: content 字段包含 "OpenSearch"。 status 字段为 active。 date 字段大于等于 "20240101"。