DESCRIBE TABLE
DESCRIBE TABLE
테이블 컬럼에 대한 정보를 반환해요.
출처: 문서
본문
Syntax
DESC|DESCRIBE TABLE [db.]table [INTO OUTFILE filename] [FORMAT format]
DESCRIBE 문은 각 테이블 컬럼에 대해 다음 String 값을 가진 행을 반환해요.
name— 컬럼 이름이에요.type— 컬럼 타입이에요.default_type— 컬럼 기본 표현식에 사용되는 절이에요:DEFAULT,MATERIALIZED또는ALIAS. 기본 표현식이 없으면 빈 문자열이 반환됩니다.default_expression—DEFAULT절 뒤에 지정된 표현식이에요.comment— 컬럼 주석이에요.codec_expression— 컬럼에 적용되는 codec이에요.ttl_expression— TTL 표현식이에요.is_subcolumn— 내부 서브컬럼에 대해1과 같은 플래그예요. describe_include_subcolumns 설정으로 서브컬럼 설명이 활성화된 경우에만 결과에 포함됩니다.
Nested 데이터 구조의 모든 컬럼은 별도로 설명됩니다. 각 컬럼의 이름은 부모 컬럼 이름과 점으로 접두사가 붙습니다.
다른 데이터 타입의 내부 서브컬럼을 보여주려면 describe_include_subcolumns 설정을 사용하세요.
Example
CREATE TABLE describe_example (
id UInt64, text String DEFAULT 'unknown' CODEC(ZSTD),
user Tuple (name String, age UInt8)
) ENGINE = MergeTree() ORDER BY id;
DESCRIBE TABLE describe_example;
DESCRIBE TABLE describe_example SETTINGS describe_include_subcolumns=1;
┌─name─┬─type──────────────────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┐
│ id │ UInt64 │ │ │ │ │ │
│ text │ String │ DEFAULT │ 'unknown' │ │ ZSTD(1) │ │
│ user │ Tuple(name String, age UInt8) │ │ │ │ │ │
└──────┴───────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘
두 번째 쿼리는 서브컬럼도 추가로 보여줘요.
┌─name──────┬─type──────────────────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┬─is_subcolumn─┐
│ id │ UInt64 │ │ │ │ │ │ 0 │
│ text │ String │ DEFAULT │ 'unknown' │ │ ZSTD(1) │ │ 0 │
│ user │ Tuple(name String, age UInt8) │ │ │ │ │ │ 0 │
│ user.name │ String │ │ │ │ │ │ 1 │
│ user.age │ UInt8 │ │ │ │ │ │ 1 │
└───────────┴───────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┴──────────────┘
DESCRIBE 문은 서브쿼리나 스칼라 표현식에도 사용할 수 있어요.
DESCRIBE SELECT 1 FORMAT TSV;
또는
DESCRIBE (SELECT 1) FORMAT TSV;
1 UInt8
이 사용법은 지정된 쿼리 또는 서브쿼리의 결과 컬럼에 대한 메타데이터를 반환해요. 복잡한 쿼리의 구조를 실행 전에 이해하는 데 유용합니다.
See Also