DESCRIBE QUERY
描述
DESCRIBE QUERY
语句用于返回查询输出的元数据。可以使用缩写 DESC
代替 DESCRIBE
来描述查询输出。
语法
{ DESC | DESCRIBE } [ QUERY ] input_statement
参数
-
QUERY 此子句是可选的,可以省略。
-
input_statement
指定一个生成结果集的语句,可以是以下之一
- 一个
SELECT
语句 - 一个
CTE(公用表表达式)
语句 - 一个
INLINE TABLE
语句 - 一个
TABLE
语句 - 一个
FROM
语句`
有关查询参数的详细语法,请参阅 select-statement。
- 一个
示例
-- Create table `person`
CREATE TABLE person (name STRING , age INT COMMENT 'Age column', address STRING);
-- Returns column metadata information for a simple select query
DESCRIBE QUERY SELECT age, sum(age) FROM person GROUP BY age;
+--------+---------+----------+
|col_name|data_type| comment|
+--------+---------+----------+
| age| int|Age column|
|sum(age)| bigint| null|
+--------+---------+----------+
-- Returns column metadata information for common table expression (`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|
+--------+---------+-------+
-- Returns column metadata information for an inline table.
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|
+--------+---------+-------+
-- Returns column metadata information for `TABLE` statement.
DESC QUERY TABLE person;
+--------+---------+----------+
|col_name|data_type| comment|
+--------+---------+----------+
| name| string| null|
| age| int| Agecolumn|
| address| string| null|
+--------+---------+----------+
-- Returns column metadata information for a `FROM` statement.
-- `QUERY` clause is optional and can be omitted.
DESCRIBE FROM person SELECT age;
+--------+---------+----------+
|col_name|data_type| comment|
+--------+---------+----------+
| age| int| Agecolumn|
+--------+---------+----------+