Query Schema Action

Request

  1. POST /api/query_schema/<ns_name>/<db_name>

Description

Query Schema Action 可以返回给定的 SQL 有关的表的建表语句。可以用于本地测试一些查询场景。 该 API 在 1.2 版本中发布。

Path parameters

  • <db_name>

    指定数据库名称。该数据库会被视为当前session的默认数据库,如果在 SQL 中的表名没有限定数据库名称的话,则使用该数据库。

Query parameters

Request body

  1. text/plain
  2. sql
  • sql 字段为具体的 SQL

Response

  • 返回结果集

    1. CREATE TABLE `tbl1` (
    2. `k1` int(11) NULL,
    3. `k2` int(11) NULL
    4. ) ENGINE=OLAP
    5. DUPLICATE KEY(`k1`, `k2`)
    6. COMMENT 'OLAP'
    7. DISTRIBUTED BY HASH(`k1`) BUCKETS 3
    8. PROPERTIES (
    9. "replication_allocation" = "tag.location.default: 1",
    10. "in_memory" = "false",
    11. "storage_format" = "V2",
    12. "disable_auto_compaction" = "false"
    13. );
    14. CREATE TABLE `tbl2` (
    15. `k1` int(11) NULL,
    16. `k2` int(11) NULL
    17. ) ENGINE=OLAP
    18. DUPLICATE KEY(`k1`, `k2`)
    19. COMMENT 'OLAP'
    20. DISTRIBUTED BY HASH(`k1`) BUCKETS 3
    21. PROPERTIES (
    22. "replication_allocation" = "tag.location.default: 1",
    23. "in_memory" = "false",
    24. "storage_format" = "V2",
    25. "disable_auto_compaction" = "false"
    26. );

Example

  1. 在本地文件 1.sql 中写入 SQL

    1. select tbl1.k2 from tbl1 join tbl2 on tbl1.k1 = tbl2.k1;
  2. 使用 curl 命令获取建表语句

    1. curl -X POST -H 'Content-Type: text/plain' -uroot: http://127.0.0.1:8030/api/query_schema/internal/db1 -d@1.sql