正在加载

SQL 入门

Elastic Stack Serverless

要开始使用 Elasticsearch SQL,请创建一个包含一些数据的索引以进行实验

 PUT /library/_bulk?refresh {"index":{"_id": "Leviathan Wakes"}}
{"name": "Leviathan Wakes", "author": "James S.A. Corey", "release_date": "2011-06-02", "page_count": 561}
{"index":{"_id": "Hyperion"}}
{"name": "Hyperion", "author": "Dan Simmons", "release_date": "1989-05-26", "page_count": 482}
{"index":{"_id": "Dune"}}
{"name": "Dune", "author": "Frank Herbert", "release_date": "1965-06-01", "page_count": 604}

现在,您可以使用 SQL 搜索 API 执行 SQL

 POST /_sql?format=txt {
  "query": "SELECT * FROM library WHERE release_date < '2000-01-01'"
}

它应该返回类似于以下的内容

    author     |     name      |  page_count   | release_date
---------------+---------------+---------------+------------------------
Dan Simmons    |Hyperion       |482            |1989-05-26T00:00:00.000Z
Frank Herbert  |Dune           |604            |1965-06-01T00:00:00.000Z

您还可以使用 SQL CLI。 Elasticsearch bin 目录中有一个启动它的脚本

$ ./bin/elasticsearch-sql-cli

从那里,您可以运行相同的查询

sql> SELECT * FROM library WHERE release_date < '2000-01-01';
    author     |     name      |  page_count   | release_date
---------------+---------------+---------------+------------------------
Dan Simmons    |Hyperion       |482            |1989-05-26T00:00:00.000Z
Frank Herbert  |Dune           |604            |1965-06-01T00:00:00.000Z
© . All rights reserved.