SHOW COLUMNS - Amazon Redshift

SHOW COLUMNS

显示表中列的列表以及一些列属性。

每个输出行由以逗号分隔的数据库名称、架构名称、表名、列名、序号位置、列默认值、可为空、数据类型、字符最大长度、数字精度和注释的列表组成。有关这些属性的更多信息,请参阅 SVV_ALL_COLUMNS

如果 SHOW COLUMNS 命令生成的列数超过 10000 列,则会返回错误。

语法

SHOW COLUMNS FROM TABLE database_name.schema_name.table_name [LIKE 'filter_pattern'] [LIMIT row_limit ]

参数

database_name

包含要列出的表的数据库的名称。

要显示 AWS Glue Data Catalog 中的表,请指定(awsdatacatalog)作为数据库名称,并确保系统配置 data_catalog_auto_mount 设置为 true。有关更多信息,请参阅 ALTER SYSTEM

schema_name

包含要列出的表的架构的名称。

要显示 AWS Glue Data Catalog 表,请提供 AWS Glue 数据库名称作为架构名称。

table_name

包含要列出的列的表的名称。

filter_pattern

一个有效的 UTF-8 字符表达式,具有与表名称匹配的模式。LIKE 选项执行区分大小写的匹配,支持以下模式匹配元字符:

元字符 描述
% 匹配任意序列的零个或多个字符。
_ 匹配任何单个字符。

如果 filter_pattern 不包含元字符,则模式仅表示字符串本身;在此情况下,LIKE 的行为与等于运算符相同。

row_limit

要返回的最大行数。row_limit 可以是 0–10000。

示例

以下示例显示了名为 dev 的 Amazon Redshift 数据库中的列,这些列位于架构 public 和表 tb 中。

SHOW COLUMNS FROM TABLE dev.public.tb; database_name | schema_name | table_name | column_name | ordinal_position | column_default | is_nullable | data_type | character_maximum_length | numeric_precision | remarks ---------------+-------------+------------+-------------+------------------+----------------+-------------+-----------+--------------------------+-------------------+--------- dev | public | tb | col | 1 | | YES | integer | | 32 |

以下示例显示了名为 awsdatacatalog 的 AWS Glue Data Catalog 数据库中的表,这些表位于架构 batman 和表 nation 中。输出仅限于 2 行。

SHOW COLUMNS FROM TABLE awsdatacatalog.batman.nation LIMIT 2; database_name | schema_name | table_name | column_name | ordinal_position | column_default | is_nullable | data_type | character_maximum_length | numeric_precision | remarks ----------------+-------------+------------+-------------+------------------+----------------+-------------+-----------+--------------------------+-------------------+--------- awsdatacatalog | batman | nation | n_nationkey | 1 | | | integer | | | awsdatacatalog | batman | nation | n_name | 2 | | | character | | |