SHOW CREATE TABLE

如果在业务开发中想要快速复刻一张表的结构,推荐您使用SHOW CREATE TABLE语句。相较于DESCRIBESHOW CREATE TABLE可以提供完整的建表语句,复制返回结果即可使用。

引擎与版本

  • SHOW CREATE TABLE语法适仅适用于宽表引擎。

  • 宽表引擎2.6.2及以上版本支持SHOW CREATE TABLE语法。

    重要

    要求Lindorm SQL为2.6.3.2以上版本。如何查看Lindorm SQL版本,请参见SQL版本说明

语法

show_create_table_statement ::=  SHOW CREATE TABLE table_identifer
重要
  • SHOW CREATE TABLE暂不支持返回建表时设置的表属性。您可以登录集群管理系统,查看表属性对应参数的值。表属性的详细介绍,请参见表属性(table_options)

  • SHOW CREATE TABLE的返回结果中不包含写入的动态列。

示例

假设建表语句如下:

-- 创建表sensor
CREATE TABLE sensor (p1 INT, c1 INT, c2 VARCHAR, PRIMARY KEY(p1)) WITH (COMPRESSION='ZSTD', TTL='2592000', DYNAMIC_COLUMNS='TRUE');

-- 写入动态列c3
UPSERT INTO sensor (p1, c2, c3) VALUES (1, '1', '41');

执行以下命令,查看建表语句。​

SHOW CREATE TABLE sensor;

返回结果如下:

+--------+--------------------------------+
| TABLE  |          CREATE TABLE          |
+--------+--------------------------------+
| sensor | CREATE TABLE sensor(p1 int     |
|        | NOT NULL, c1 int, c2 varchar,  |
|        | PRIMARY KEY (p1))              |
+--------+--------------------------------+