DESCRIBE QUERY
Description
The DESCRIBE QUERY statement is used to return the metadata of output
of a query. A shorthand DESC may be used instead of DESCRIBE to
describe the query output.
Syntax
{DESC | DESCRIBE} [QUERY] input_statementParameters
- QUERY
- This clause is optional and may be omitted.
- input_statement
- 
    Specifies a result set producing statement and may be one of the following: 
    - a SELECTstatement
- a CTE(Common table expression)statement
- an INLINE TABLEstatement
- a TABLEstatement
- a FROMstatement
 
- a 
Examples
-- 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 experession (`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 a 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      |Age column|
  |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      |Age column|
  +--------+---------+----------+