参考

Translate API

SQL 翻译接口

SQL 翻译 API 接受 JSON 文档中的 SQL,并将其转换为Elasticsearch 查询。例如:

  1. POST /_sql/translate
  2. {
  3. "query": "SELECT * FROM library ORDER BY page_count DESC",
  4. "fetch_size": 10
  5. }

转换为

  1. {
  2. "size": 10,
  3. "_source": false,
  4. "fields": [
  5. {
  6. "field": "author"
  7. },
  8. {
  9. "field": "name"
  10. },
  11. {
  12. "field": "page_count"
  13. },
  14. {
  15. "field": "release_date",
  16. "format": "strict_date_optional_time_nanos"
  17. }
  18. ],
  19. "sort": [
  20. {
  21. "page_count": {
  22. "order": "desc",
  23. "missing": "_first",
  24. "unmapped_type": "long"
  25. }
  26. }
  27. ]
  28. }

这是SQL将运行以提供结果的请求。在这种情况下,SQL 将使用滚动 API。如果结果包含聚合,则 SQL 将使用常规搜索 API。
请求正文接受与 SQL 搜索 API 相同的参数,不包括 。cursor