跳至主要内容

columns

包含所有表中列的信息。

您可以使用此表获取类似于DESCRIBE TABLE查询的信息,但可以同时针对多个表。

来自临时表的列仅在创建它们的会话中在system.columns中可见。它们显示为空database字段。

system.columns表包含以下列(列类型显示在括号中)

  • databaseString) - 数据库名称。
  • tableString) - 表名称。
  • nameString) - 列名称。
  • typeString) - 列类型。
  • positionUInt64) - 列在表中的序号,从 1 开始。
  • default_kindString) - 默认值的表达式类型(DEFAULTMATERIALIZEDALIAS),如果未定义则为空字符串。
  • default_expressionString) - 默认值的表达式,如果未定义则为空字符串。
  • data_compressed_bytesUInt64) - 压缩数据的大小,以字节为单位。
  • data_uncompressed_bytesUInt64) - 解压缩数据的大小,以字节为单位。
  • marks_bytesUInt64) - 标记的大小,以字节为单位。
  • commentString) - 列的注释,如果未定义则为空字符串。
  • is_in_partition_keyUInt8) - 指示列是否在分区表达式中的标志。
  • is_in_sorting_keyUInt8) - 指示列是否在排序键表达式中的标志。
  • is_in_primary_keyUInt8) - 指示列是否在主键表达式中的标志。
  • is_in_sampling_keyUInt8) - 指示列是否在采样键表达式中的标志。
  • compression_codecString) - 压缩编解码器名称。
  • character_octet_lengthNullable(UInt64)) - 二进制数据、字符数据或文本数据和图像的最大长度(以字节为单位)。在 ClickHouse 中,仅对FixedString数据类型有意义。否则,返回NULL值。
  • numeric_precisionNullable(UInt64)) - 近似数值数据、精确数值数据、整数数据或货币数据的精度。在 ClickHouse 中,它是整数类型的位宽以及Decimal类型的十进制精度。否则,返回NULL值。
  • numeric_precision_radixNullable(UInt64)) - 数制基数是近似数值数据、精确数值数据、整数数据或货币数据的精度。在 ClickHouse 中,整数类型为 2,Decimal类型为 10。否则,返回NULL值。
  • numeric_scaleNullable(UInt64)) - 近似数值数据、精确数值数据、整数数据或货币数据的刻度。在 ClickHouse 中,仅对Decimal类型有意义。否则,返回NULL值。
  • datetime_precisionNullable(UInt64)) - DateTime64数据类型的十进制精度。对于其他数据类型,返回NULL值。

示例

SELECT * FROM system.columns LIMIT 2 FORMAT Vertical;
Row 1:
──────
database: INFORMATION_SCHEMA
table: COLUMNS
name: table_catalog
type: String
position: 1
default_kind:
default_expression:
data_compressed_bytes: 0
data_uncompressed_bytes: 0
marks_bytes: 0
comment:
is_in_partition_key: 0
is_in_sorting_key: 0
is_in_primary_key: 0
is_in_sampling_key: 0
compression_codec:
character_octet_length: ᴺᵁᴸᴸ
numeric_precision: ᴺᵁᴸᴸ
numeric_precision_radix: ᴺᵁᴸᴸ
numeric_scale: ᴺᵁᴸᴸ
datetime_precision: ᴺᵁᴸᴸ

Row 2:
──────
database: INFORMATION_SCHEMA
table: COLUMNS
name: table_schema
type: String
position: 2
default_kind:
default_expression:
data_compressed_bytes: 0
data_uncompressed_bytes: 0
marks_bytes: 0
comment:
is_in_partition_key: 0
is_in_sorting_key: 0
is_in_primary_key: 0
is_in_sampling_key: 0
compression_codec:
character_octet_length: ᴺᵁᴸᴸ
numeric_precision: ᴺᵁᴸᴸ
numeric_precision_radix: ᴺᵁᴸᴸ
numeric_scale: ᴺᵁᴸᴸ
datetime_precision: ᴺᵁᴸᴸ