Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

DESCRIBE TABLE

يعرض معلومات عن أعمدة الجدول.

البنية

DESC|DESCRIBE TABLE [db.]table [INTO OUTFILE filename] [FORMAT format]

تعيد عبارة DESCRIBE صفًا لكل عمود في الجدول، بالقيم التالية من نوع String:

  • name — اسم العمود.
  • type — نوع العمود.
  • default_type — عبارة تُستخدم في التعبير الافتراضي للعمود: DEFAULT أو MATERIALIZED أو ALIAS. وإذا لم يكن هناك تعبير افتراضي، فستُعاد سلسلة فارغة.
  • default_expression — تعبير مُحدَّد بعد العبارة DEFAULT.
  • commentتعليق العمود.
  • codec_expressioncodec مُطبَّق على العمود.
  • ttl_expression — تعبير TTL.
  • is_subcolumn — علامة تساوي 1 للأعمدة الفرعية الداخلية. ولا يُضمَّن هذا الحقل في النتيجة إلا إذا كان وصف الأعمدة الفرعية مُمكّنًا بواسطة الإعداد describe_include_subcolumns.

تُوصَف جميع الأعمدة في هياكل البيانات Nested كلٌّ على حدة. ويُسبَق اسم كل عمود باسم العمود الأب متبوعًا بنقطة.

لعرض الأعمدة الفرعية الداخلية لأنواع البيانات الأخرى، استخدم الإعداد describe_include_subcolumns.

مثال

Querysql
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;
Responsetext
┌─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) │              │                    │         │                  │                │
└──────┴───────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘

يعرض الاستعلام الثاني أيضًا الأعمدة الفرعية:

Responsetext
┌─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;
Responsetext
1       UInt8

يُرجع هذا الاستخدام بيانات وصفية عن أعمدة نتائج الاستعلام أو الاستعلام الفرعي المحدد. ويكون مفيدًا لفهم بنية الاستعلامات المعقدة قبل تنفيذها.

انظر أيضًا

Navigation