描述查询
描述
该
DESCRIBE QUERY
语句用于返回查询输出的元数据。可以使用
DESC
作为
DESCRIBE
的简写来描述查询输出。
语法
{ DESC | 描述 } [ 查询 ] input_statement
参数
-
查询 该条款是可选的,可以省略。
-
输入语句
指定一个生成结果集的语句,可以是以下之一:
-
一个
SELECT
语句 -
一个
CTE(公共表表达式)
语句 -
一个
INLINE TABLE
语句 -
一个
TABLE
语句 -
一个
FROM
语句`
详情请参考 select-statement 的查询参数详细语法。
-
一个
示例
-- 创建表 `person`
CREATE TABLE person (name STRING , age INT COMMENT '年龄列', address STRING);
-- 返回简单选择查询的列元数据信息
DESCRIBE QUERY SELECT age, sum(age) FROM person GROUP BY age;
+--------+---------+----------+
|col_name|data_type| comment|
+--------+---------+----------+
| age| int|年龄 列|
|sum(age)| bigint| null|
+--------+---------+----------+
-- 返回公共表表达式(`CTE`)的列元数据信息。
DESCRIBE QUERY WITH all_names_cte
AS (SELECT name from person) SELECT * FROM all_names_cte;
+--------+---------+-------+
|col_name|data_type|comment|
+--------+---------+-------+
| name| string| null|
+--------+---------+-------+
-- 返回内联表的列元数据信息。
DESC QUERY VALUES(100, 'John', 10000.20D) AS employee(id, name, salary);
+--------+---------+-------+
|col_name|data_type|comment|
+--------+---------+-------+
| id| int| null|
| name| string| null|
| salary| double| null|
+--------+---------+-------+
-- 返回 `TABLE` 语句的列元数据信息。
DESC QUERY TABLE person;
+--------+---------+----------+
|col_name|data_type| comment|
+--------+---------+----------+
| name| string| null|
| age| int| 年龄列|
| address| string| null|
+--------+---------+----------+
-- 返回 `FROM` 语句的列元数据信息。
-- `QUERY` 子句是可选的,可以省略。
DESCRIBE FROM person SELECT age;
+--------+---------+----------+
|col_name|data_type| comment|
+--------+---------+----------+
| age| int| 年龄列|
+--------+---------+----------+