首页/数据/NoSQL 速查/Elasticsearch SQL 查询
本包目录(322 条)
MongoDB99 条
Elasticsearch89 条
ClickHouse56 条时序与列式28 条选型与架构50 条

Elasticsearch SQL 查询

SQL 接口让熟悉 SQL 的用户直接查询索引:SELECT/FROM/WHERE/GROUP BY/ORDER BY/LIMIT 的子集可用,translate 接口能看到等价的 DSL。

NoSQL 速查数据更新于 2026-10-12
接口POST /_sql?format=txt 或 format=json
翻译POST /_sql/translate 返回等效查询 DSL
限制只读、面向分析;复杂 JOIN 与部分函数不支持

示例

示例
POST /_sql?format=txt
{
  "query": "SELECT status, COUNT(*) AS cnt FROM "logs-*" WHERE status = 200 GROUP BY status ORDER BY cnt DESC LIMIT 5"
}
表名等价于索引名,含通配符时要加双引号;字段名大小写敏感时同样用双引号。

易错点

  • SQL 与原生 DSL 并非全功能对等,性能敏感查询先用 translate 检查生成的 DSL
  • curl 里双引号需要转义,脚本化时建议用请求体文件避免转义错误

数据来源与参考

  • Elasticsearch Guide: SQL APIs
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌