首页/云/可观测性速查/Term 与 Range:精确值与范围查询
日志平台52 条

Term 与 Range:精确值与范围查询

term 匹配不分词的精确值(keyword 字段),range 匹配数值与时间区间;两者是日志过滤中使用频率很高的原子条件。

可观测性速查云更新于 2026-10-12

查询示例

查询示例
# term:精确匹配
GET /logs-app/_search { "query": { "term": { "level.keyword": "error" } } }

# range:时间与数值区间
GET /logs-app/_search
{
  "query": { "range": { "duration_ms": { "gte": 1000, "lt": 5000 } } }
}

# 多个精确值
GET /logs-app/_search { "query": { "terms": { "level.keyword": ["error", "warn"] } } }
range 的时间条件用 now-1h 这类表达式书写,服务端按请求时刻解析。

易错点

  • 对 text 字段用 term 查不到多半因为分词,换成 .keyword 或 match 查询
  • 数值型字段存成字符串后范围查询结果异常,写入前统一类型

数据来源与参考

  • Elastic 官方文档 · Term query / Range query
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌