Elasticsearch:Elasticsearch SQL介绍及实例

SQL 实操

检索Elasticsearch schema 信息:DSL vs SQL

首先,我们确定表/索引的schema以及可供我们使用的字段。 我们将通过REST界面执行此操作:

POST /_sql
{
  "query":"desc sports"
}

上面的命令结果:

复制代码
{
  "columns" : [
    {
      "name" : "column",
      "type" : "keyword"
    },
    {
      "name" : "type",
      "type" : "keyword"
    },
    {
      "name" : "mapping",
      "type" : "keyword"
    }
  ],
  "rows" : [
    [
      "age",
      "INTEGER",
      "integer"
    ],
    [
      "birthdate",
      "TIMESTAMP",
      "datetime"
    ],
    [
      "goals",
      "INTEGER",
      "integer"
    ],
    [
      "location",
      "GEOMETRY",
      "geo_point"
    ],
    [
      "name",
      "VARCHAR",
      "keyword"
    ],
    [
      "rating",
      "INTEGER",
      "integer"
    ],
    [
      "role",
      "VARCHAR",
      "keyword"
    ],
    [
      "score_weight",
      "REAL",
      "float"
    ],
    [
      "sport",
      "VARCHAR",
      "keyword"
    ]
  ]
}
复制代码

也可以通过url参数format = txt以表格形式格式化以上响应。 例如:

POST /_sql?format=txt 
{
  "query": "DESCRIB sports"
}

上面查询结果

复制代码
|   column     |     type      |    mapping    
---------------+---------------+---------------
age            |INTEGER        |integer        
birthdate      |TIMESTAMP      |datetime       
goals          |INTEGER        |integer        
location       |GEOMETRY       |geo_point      
name           |VARCHAR        |keyword        
rating         |INTEGER        |integer        
role           |VARCHAR        |keyword        
score_weight   |REAL           |float          
sport          |VARCHAR        |keyword        
复制代码

也可以通过控制台实现相同的查询,需要使用一下命令登陆:

cd /home/elastic/elasticsearch-7.5.1
./bin/elasticsearch-sql-cli http://192.168.1.234:9200

可以看到SQL的命令提示符了,可以直接输入sql

posted @   fat_girl_spring  阅读(737)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示