

 从补丁 198 开始，Amazon Redshift 将不再支持创建新的 Python UDF。现有的 Python UDF 将继续正常运行至 2026 年 6 月 30 日。有关更多信息，请参阅[博客文章](https://www.amazonaws.cn/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/)。

# SHOW COLUMNS
<a name="r_SHOW_COLUMNS"></a>

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

每个输出行由以逗号分隔的数据库名称、架构名称、表名、列名、序号位置、列默认值、可为空、数据类型、字符最大长度、数字精度、备注、排序键类型、排序键顺序、分布键、编码和排序规则的列表组成。有关这些属性的更多信息，请参阅 [SVV\$1ALL\$1COLUMNS](r_SVV_ALL_COLUMNS.md)。

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

## 所需的权限
<a name="r_SHOW_COLUMNS-privileges"></a>

要查看 Amazon Redshift 表中的列，当前用户必须满足以下条件之一：
+ 是超级用户。
+ 是该表的拥有者。
+ 获得对父架构的 USAGE 权限，并获得对表的 SELECT 权限或对列的 SELECT 权限。

## 语法
<a name="r_SHOW_COLUMNS-synopsis"></a>

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

## 参数
<a name="r_SHOW_COLUMNS-parameters"></a>

 *database\$1name*   
包含要列出的表的数据库的名称。  
要显示 Amazon Glue Data Catalog 中的表，请指定（`awsdatacatalog`）作为数据库名称，并确保系统配置 `data_catalog_auto_mount` 设置为 `true`。有关更多信息，请参阅 [ALTER SYSTEM](r_ALTER_SYSTEM.md)。

 *schema\$1name*   
包含要列出的表的架构的名称。  
要显示 Amazon Glue Data Catalog 表，请提供 Amazon Glue 数据库名称作为架构名称。

 *table\$1name*   
包含要列出的列的表的名称。

 *filter\$1pattern*   
一个有效的 UTF-8 字符表达式，具有与表名称匹配的模式。LIKE 选项执行区分大小写的匹配，支持以下模式匹配元字符：      
[\[See the AWS documentation website for more details\]](http://docs.amazonaws.cn/redshift/latest/dg/r_SHOW_COLUMNS.html)
如果 *filter\$1pattern* 不包含元字符，则模式仅表示字符串本身；在此情况下，LIKE 的行为与等于运算符相同。

 *row\$1limit*   
要返回的最大行数。*row\$1limit* 可以是 0–10000。

## 示例
<a name="r_SHOW_COLUMNS-examples"></a>

以下示例显示了名为 `sample_data_dev` 的 Amazon Redshift 数据库中的列，这些列位于架构 `tickit` 和表 `event` 中。

```
SHOW COLUMNS FROM TABLE demo_schema.compound_sort_table;

  database_name | schema_name |     table_name      | column_name | ordinal_position | column_default | is_nullable |     data_type     | character_maximum_length | numeric_precision | numeric_scale | remarks | sort_key_type | sort_key | dist_key | encoding | collation 
---------------+-------------+---------------------+-------------+------------------+----------------+-------------+-------------------+--------------------------+-------------------+---------------+---------+---------------+----------+----------+----------+-----------
 demo_db       | demo_schema | compound_sort_table | id          |                1 |                | YES         | integer           |                          |                32 |             0 |         | COMPOUND      |        1 |        1 | delta32k | 
 demo_db       | demo_schema | compound_sort_table | name        |                2 |                | YES         | character varying |                       50 |                   |               |         | COMPOUND      |        2 |          | lzo      | default
 demo_db       | demo_schema | compound_sort_table | date_col    |                3 |                | YES         | date              |                          |                   |               |         |               |        0 |          | delta    | 
 demo_db       | demo_schema | compound_sort_table | amount      |                4 |                | YES         | numeric           |                          |                10 |             2 |         |               |        0 |          | mostly16 |
```

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

```
SHOW COLUMNS FROM TABLE second_db.public.t22;

 database_name | schema_name | table_name | column_name | ordinal_position | column_default | is_nullable |          data_type          | character_maximum_length | numeric_precision | numeric_scale | remarks | sort_key_type | sort_key | dist_key | encoding | collation 
---------------+-------------+------------+-------------+------------------+----------------+-------------+-----------------------------+--------------------------+-------------------+---------------+---------+---------------+----------+----------+----------+-----------
 second_db     | public      | t22        | col1        |                1 |                | YES         | integer                     |                          |                32 |             0 |         | INTERLEAVED   |       -1 |          | mostly8  | 
 second_db     | public      | t22        | col2        |                2 |                | YES         | character varying           |                      100 |                   |               |         | INTERLEAVED   |        2 |          | text255  | default
 second_db     | public      | t22        | col3        |                3 |                | YES         | timestamp without time zone |                          |                   |               |         |               |        0 |          | raw      | 
 second_db     | public      | t22        | col4        |                4 |                | YES         | numeric                     |                          |                10 |             2 |         |               |        0 |          | az64     |
```