本文为您详细介绍查看表相关命令。
类型 | 功能 | 角色 | 操作入口 |
查看MaxCompute内部表、视图、外部表、聚簇表或Transactional表的信息。 | 具备读取表元信息权限(Describe)的用户。 | 本文中的命令您可以在如下工具平台执行: | |
查看表中分区的详细信息。 | |||
查看表的SQL DDL语句。 | |||
列出项目下所有的表、外部表、视图和物化视图,或符合某些规则的表、外部表、视图和物化视图。 | 具备项目查看对象列表权限(List)的用户。 | ||
列出项目下所有的外部表,或符合某些规则的外部表。 | |||
列出项目下所有的普通视图,或符合某些规则的普通视图。 | |||
列出项目下所有的物化视图,或符合某些规则的物化视图。 | |||
列出一张表中的所有分区。当表不存在或为非分区表时,返回报错。 |
查看表或视图信息
查看MaxCompute内部表、视图、外部表、聚簇表或Transactional表的信息。如果您需要查看表的详细数据信息,请参见SELECT语法。
命令格式
查看表或视图信息。
DESC <table_name|view_name> [partition (<pt_spec>)];
查看外部表、聚簇表或Transactional表信息以及内部表的扩展信息(例如列的非空属性)。
--查看外部表、聚簇表或Transactional表信息。也可以查看内部表的扩展信息。 DESC EXTENDED <table_name>;
参数说明
table_name:必填。待查看表的名称。
view_name:必填。待查看视图的名称。
pt_spec:可选。待查看分区表的指定分区。格式为
(partition_col1 = partition_col_value1, partition_col2 = partition_col_value2, ...)
。
使用示例
本文所查看表的数据,详情请参见创建和删除表。
查看创建的test1表的信息。
DESC test1;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$maoXXX@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2020-11-16 17:47:48 | | LastDDLTime: 2020-11-16 17:47:48 | | LastModifiedTime: 2020-11-16 17:47:48 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | Comment | +------------------------------------------------------------------------------------+ | key | string | | | +------------------------------------------------------------------------------------+
查看创建的sale_detail表的信息。
DESC sale_detail;
返回结果如下。
+--------------------------------------------------------------------+ | Owner: ALIYUN$maoXXX@alibaba-inc.com | Project: $project_name | | TableComment: | +--------------------------------------------------------------------+ | CreateTime: 2017-06-28 15:05:17 | | LastDDLTime: 2017-06-28 15:05:17 | | LastModifiedTime: 2017-06-28 15:05:17 | +--------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +--------------------------------------------------------------------+ | Native Columns: | +--------------------------------------------------------------------+ | Field | Type | Label | Comment | +--------------------------------------------------------------------+ | shop_name | string | | | | customer_id | string | | | | total_price | double | | | +--------------------------------------------------------------------+ | Partition Columns: | +--------------------------------------------------------------------+ | sale_date | string | | | region | string | | +--------------------------------------------------------------------+
查看创建的sale_detail_ctas1表的详细信息。
DESC extended sale_detail_ctas1;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$maoXXX@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2021-07-07 15:29:53 | | LastDDLTime: 2021-07-07 15:29:53 | | LastModifiedTime: 2021-07-07 15:29:53 | | Lifecycle: 10 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | ExtendedLabel | Nullable | DefaultValue | Comment | +------------------------------------------------------------------------------------+ | shop_name | string | | | true | NULL | | | customer_id | string | | | true | NULL | | | total_price | double | | | true | NULL | | | sale_date | string | | | true | NULL | | | region | string | | | true | NULL | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ | TableID: 98cb8a38733c49eabed4735173818147 | | IsArchived: false | | PhysicalSize: 0 | | FileNum: 0 | | StoredAs: AliOrc | | CompressionStrategy: normal | +------------------------------------------------------------------------------------+
sale_date
和region
两个字段仅会作为普通列存在,而不是表的分区。查看创建的sale_detail_ctas2表的信息。
DESC sale_detail_ctas2;
返回结果如下。
+--------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@alibaba-inc.com | Project: $project_name | | TableComment: | +--------------------------------------------------------------------+ | CreateTime: 2017-06-28 15:42:17 | | LastDDLTime: 2017-06-28 15:42:17 | | LastModifiedTime: 2017-06-28 15:42:17 | +--------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +--------------------------------------------------------------------+ | Native Columns: | +--------------------------------------------------------------------+ | Field | Type | Label | Comment | +--------------------------------------------------------------------+ | shop_name | string | | | | customer_id | string | | | | total_price | double | | | | sale_date | string | | | | region | string | | | +--------------------------------------------------------------------+
查看创建的sale_detail_like表的详细信息。
DESC extended sale_detail_like;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2021-07-07 15:40:38 | | LastDDLTime: 2021-07-07 15:40:38 | | LastModifiedTime: 2021-07-07 15:40:38 | | Lifecycle: 10 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | ExtendedLabel | Nullable | DefaultValue | Comment | +------------------------------------------------------------------------------------+ | shop_name | string | | | true | NULL | | | customer_id | string | | | true | NULL | | | total_price | double | | | true | NULL | | +------------------------------------------------------------------------------------+ | Partition Columns: | +------------------------------------------------------------------------------------+ | sale_date | string | | | region | string | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ | TableID: 61782ff7713f426e9d6f91d5deeac99a | | IsArchived: false | | PhysicalSize: 0 | | FileNum: 0 | | StoredAs: AliOrc | | CompressionStrategy: normal | +------------------------------------------------------------------------------------+
除生命周期属性外,
sale_detail_like
的其他属性(字段类型、分区类型等)均与sale_detail
完全一致。说明通过
DESC table_name
查看到的Size包含了在回收站的数据Size。如果您需要清空回收站,可以先执行PURGE TABLE table_name
,然后再执行DESC table_name
查看除回收站以外的数据大小。您也可以执行SHOW recyclebin
查看本项目中回收站内的数据明细。查看创建的test_newtype表的信息。
DESC test_newtype;
返回结果如下。
| Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | Comment | +------------------------------------------------------------------------------------+ | c1 | tinyint | | | | c2 | smallint | | | | c3 | int | | | | c4 | bigint | | | | c5 | float | | | | c6 | double | | | | c7 | decimal | | | | c8 | binary | | | | c9 | timestamp | | | | c10 | array<map<bigint,bigint>> | | | | c11 | map<string,array<bigint>> | | | | c12 | struct<s1:string,s2:bigint> | | | | c13 | varchar(20) | | | +------------------------------------------------------------------------------------+ OK
查看创建的Hash聚簇非分区表t1的信息。聚簇属性将显示在Extended Info中。
DESC extended t1;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2020-11-16 18:00:56 | | LastDDLTime: 2020-11-16 18:00:56 | | LastModifiedTime: 2020-11-16 18:00:56 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | ExtendedLabel | Nullable | DefaultValue | Comment | +------------------------------------------------------------------------------------+ | a | string | | | true | NULL | | | b | string | | | true | NULL | | | c | bigint | | | true | NULL | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ | TableID: e6b06f705dc34a36a5b72e5af486cab7 | | IsArchived: false | | PhysicalSize: 0 | | FileNum: 0 | | StoredAs: AliOrc | | CompressionStrategy: normal | | ClusterType: hash | | BucketNum: 1024 | | ClusterColumns: [c] | | SortColumns: [c ASC] | +------------------------------------------------------------------------------------+ OK
查看创建的Hash聚簇分区表t2的信息。聚簇属性将显示在Extended Info中。
DESC EXTENDED t2;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2017-12-25 11:18:26 | | LastDDLTime: 2017-12-25 11:18:26 | | LastModifiedTime: 2017-12-25 11:18:26 | | Lifecycle: 2 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | Comment | +------------------------------------------------------------------------------------+ | a | string | | | | b | string | | | | c | bigint | | | +------------------------------------------------------------------------------------+ | Partition Columns: | +------------------------------------------------------------------------------------+ | dt | string | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ | TableID: 91a3395d3ef64b4d9ee1d2852755 | | IsArchived: false | | PhysicalSize: 0 | | FileNum: 0 | | ClusterType: hash | | BucketNum: 1024 | | ClusterColumns: [c] | | SortColumns: [c ASC] | +------------------------------------------------------------------------------------+ OK
查看Range聚簇非分区表t3的信息。聚簇属性将显示在Extended Info中。
DESC extended t3;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2020-11-16 18:01:05 | | LastDDLTime: 2020-11-16 18:01:05 | | LastModifiedTime: 2020-11-16 18:01:05 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | ExtendedLabel | Nullable | DefaultValue | Comment | +------------------------------------------------------------------------------------+ | a | string | | | true | NULL | | | b | string | | | true | NULL | | | c | bigint | | | true | NULL | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ | TableID: 38d170aca2684f4baadbbe1931a6ae1f | | IsArchived: false | | PhysicalSize: 0 | | FileNum: 0 | | StoredAs: AliOrc | | CompressionStrategy: normal | | ClusterType: range | | BucketNum: 1024 | | ClusterColumns: [c] | | SortColumns: [c ASC] | +------------------------------------------------------------------------------------+ OK
查看Range聚簇分区表t4的信息。聚簇属性将显示在Extended Info中。
DESC extended t4;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@alibaba-inc.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2020-11-16 19:17:48 | | LastDDLTime: 2020-11-16 19:17:48 | | LastModifiedTime: 2020-11-16 19:17:48 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | ExtendedLabel | Nullable | DefaultValue | Comment | +------------------------------------------------------------------------------------+ | a | string | | | true | NULL | | | b | string | | | true | NULL | | | c | bigint | | | true | NULL | | +------------------------------------------------------------------------------------+ | Partition Columns: | +------------------------------------------------------------------------------------+ | dt | string | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ | TableID: 6ebc3432e283449188c861427bcd6ee4 | | IsArchived: false | | PhysicalSize: 0 | | FileNum: 0 | | StoredAs: AliOrc | | CompressionStrategy: normal | | ClusterType: range | | BucketNum: 0 | | ClusterColumns: [c] | | SortColumns: [c ASC] | +------------------------------------------------------------------------------------+ OK
查看非分区表t5是否为Transactional表。
说明推荐您使用MaxCompute客户端查看表是否为Transactional表,需要将MaxCompute客户端升级到0.35.4或以上版本。其他工具可能会存在版本升级未就绪的问题,导致查询结果不显示Transactional信息。
DESC extended t5;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@aliyun.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2021-02-18 10:56:27 | | LastDDLTime: 2021-02-18 10:56:27 | | LastModifiedTime: 2021-02-18 10:56:27 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | ExtendedLabel | Nullable | DefaultValue | Comment | +------------------------------------------------------------------------------------+ | id | bigint | | | true | NULL | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ ... | Transactional: true | +------------------------------------------------------------------------------------+
查看分区表t6是否为Transactional表。
说明推荐您使用MaxCompute客户端查看表是否为Transactional表,需要将MaxCompute客户端升级到0.35.4版本。其他工具可能会存在版本升级未就绪的问题,导致查询结果不显示Transactional信息。
DESC extended t6;
返回结果如下。
+------------------------------------------------------------------------------------+ | Owner: ALIYUN$xxxxx@test.aliyunid.com | Project: $project_name | | TableComment: | +------------------------------------------------------------------------------------+ | CreateTime: 2021-02-18 15:34:54 | | LastDDLTime: 2021-02-18 15:34:54 | | LastModifiedTime: 2021-02-18 15:34:54 | +------------------------------------------------------------------------------------+ | InternalTable: YES | Size: 0 | +------------------------------------------------------------------------------------+ | Native Columns: | +------------------------------------------------------------------------------------+ | Field | Type | Label | Comment | +------------------------------------------------------------------------------------+ | id | bigint | | | +------------------------------------------------------------------------------------+ | Partition Columns: | +------------------------------------------------------------------------------------+ | ds | string | | +------------------------------------------------------------------------------------+ | Extended Info: | +------------------------------------------------------------------------------------+ ... | Transactional: true | +------------------------------------------------------------------------------------+
查看分区信息
查看某个分区表具体的分区的信息。
示例数据
关于sale_detail表创建,详情请参见创建sale_detail表。
为sale_detail表建立分区并插入数据。
ALTER TABLE sale_detail ADD PARTITION (sale_date='2023', region='china') PARTITION (sale_date='2024', region='shanghai');
-- 向分区表中插入数据
INSERT INTO sale_detail PARTITION (sale_date='2023', region='china') VALUES ('s1','c1',100.1),('s2','c2',100.2),('s3','c3',100.3);
INSERT INTO sale_detail PARTITION (sale_date='2024', region='shanghai') VALUES ('null','c5',null),('s6','c6',100.4),('s7','c7',100.5);
命令格式
DESC <table_name> PARTITION (<pt_spec>);
参数说明
table_name:必填。待查看分区信息的分区表名称。
pt_spec:必填。待查看的分区信息。格式为
partition_col1=col1_value1, partition_col2=col2_value1...
。对于有多级分区的表,必须指明全部的分区值。
使用示例
--查询分区表sale_detail的分区信息。
DESC sale_detail PARTITION (sale_date='2023',region='china');
返回结果如下。
+------------------------------------------------------------------------------------+
| PartitionSize: 1234 |
+------------------------------------------------------------------------------------+
| CreateTime: 2024-11-14 16:43:22 |
| LastDDLTime: 2024-11-14 16:45:37 |
| LastModifiedTime: 2024-11-14 16:45:37 |
+------------------------------------------------------------------------------------+
OK
查看建表语句
生成创建表的SQL DDL语句,方便您通过SQL重建Schema。
命令格式
SHOW CREATE TABLE <table_name>;
参数说明
table_name:必填。待查看建表语句的表的名称。
使用示例
--查看表sale_detail的建表语句。
SHOW CREATE TABLE sale_detail;
返回结果如下。
CREATE TABLE IF NOT EXISTS max****.`default`.sale_detail(shop_name STRING, customer_id STRING, total_price DOUBLE)
PARTITIONED BY (sale_date STRING, region STRING) STORED AS ALIORC TBLPROPERTIES ('columnar.nested.type'='true');
列出项目下的表和视图
列出项目下所有的表、外部表、视图和物化视图,或符合某些规则的表、外部表、视图和物化视图。
命令格式
--列出项目下所有的表和视图。
SHOW TABLES;
--列出项目下表名或视图名与chart匹配的表。
SHOW TABLES LIKE '<chart>';
使用示例
--列出项目下表名与sale*匹配的表。*表示任意字段。
SHOW TABLES LIKE 'sale*';
返回结果如下。
ALIYUN$account_name:sale_detail
......
--ALIYUN是系统提示符,表示您是阿里云主账号用户。如果您是阿里云RAM用户,系统提示符为RAM。
列出项目下外部表
列出项目下所有的外部表,或符合某些规则的外部表。
SHOW EXTERNAL TABLES
命令需要在MaxCompute客户端(odpscmd)0.43.0及以上版本中执行。
命令格式
--列出项目下所有的外部表。
SHOW EXTERNAL TABLES;
--列出项目下名称与external_chart匹配的外部表。
SHOW EXTERNAL TABLES LIKE '<external_chart>';
使用示例
--列出项目下名称与a*匹配的外部表。*表示任意字段。
SHOW EXTERNAL TABLES LIKE 'a*';
返回结果如下。
ALIYUN$account_name:a_et
......
--ALIYUN是系统提示符,表示您是阿里云主账号用户。如果您是阿里云RAM用户,系统提示符为RAM。
列出项目下普通视图
列出项目下所有的普通视图,或符合某些规则的普通视图。
SHOW VIEWS
命令需要在MaxCompute客户端(odpscmd)0.43.0及以上版本中执行。
命令格式
--列出项目下所有的普通视图。
SHOW VIEWS;
--列出项目下名称与view匹配的普通视图名。
SHOW VIEWS LIKE '<view>';
使用示例
--列出项目下名称与mf*匹配的普通视图名。*表示任意字段。
SHOW VIEWS LIKE 'mf*';
返回结果如下。
ALIYUN$account_name:mf_v
......
--ALIYUN是系统提示符,表示您是阿里云主账号用户。如果您是阿里云RAM用户,系统提示符为RAM。
列出项目下物化视图
列出项目下所有的物化视图,或符合某些规则的物化视图。
SHOW MATERIALIZED VIEWS
命令需要在MaxCompute客户端(odpscmd)0.43.0及以上版本中执行。
命令格式
--列出项目下所有的物化视图。
SHOW MATERIALIZED VIEWS;
--列出项目下名称与materialized_view匹配的物化视图。
SHOW MATERIALIZED VIEWS LIKE '<materialized_view>';
使用示例
--列出项目下名称与test*匹配的物化视图名。*表示任意字段。
SHOW MATERIALIZED VIEWS LIKE 'test*';
返回结果如下。
ALIYUN$account_name:test_two_mv
ALIYUN$account_name:test_create_one_mv
......
--ALIYUN是系统提示符,表示您是阿里云主账号用户。如果您是阿里云RAM用户,系统提示符为RAM。
列出所有分区
列出一张表中的所有分区。当表不存在或为非分区表时,返回报错。
命令格式
SHOW PARTITIONS <table_name>;
参数说明
table_name:必填。待查看分区信息的分区表名称。
使用示例
-- 列出sale_detail中的所有分区。
SHOW PARTITIONS sale_detail;
返回结果如下。
sale_date=2023/region=china
sale_date=2024/region=shanghai
OK