SHOW COLUMNS - Amazon Redshift

Amazon Redshift 自 2025 年 11 月 1 日起不再支援建立新的 Python UDF。如果您想要使用 Python UDF,請在該日期之前建立 UDF。現有 Python UDF 將繼續正常運作。如需詳細資訊,請參閱部落格文章

SHOW COLUMNS

顯示資料表中的資料欄清單,以及某些資料欄屬性。

每個輸出資料列都包含以逗號分隔的資料庫名稱、結構描述名稱、資料表名稱、資料欄名稱、序號位置、資料欄預設值、可為 Null、資料類型、字元最大長度、數值有效位數及備註。如需這些屬性的相關資訊,請參閱 SVV_ALL_COLUMNS

如果 SHOW COLUMNS 命令所產生的資料欄超過 10,000 個,則會傳回錯誤。

所需的許可

若要檢視 Amazon Redshift 資料表中的欄,目前使用者必須符合下列其中一項條件:

  • 身為超級使用者。

  • 是資料表的擁有者。

  • 在上層結構描述上具備 USAGE 權限,以及在資料表上具備 SELECT 權限,或在欄上具備 SELECT 權限。

語法

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 選項會執行區分大小寫的比對,以支援下列模式比對中繼字元:

中繼字元 說明
% 比對任何 0 的序列或更多字元。
_ 比對任一個單一字元。

如果 filter_pattern 未包含任何中繼字元,則模式只代表字串本身,此時 LIKE 的功用如同等於運算子。

row_limit

傳回的最大資料列數。row_limit 可以是 0 到 10,000。

範例

下列範例顯示 Amazon Redshift 資料庫中名為 sample_data_dev 且在結構描述 tickit 和資料表 event 中的資料欄。

SHOW COLUMNS FROM TABLE sample_data_dev.tickit.event; database_name | schema_name | table_name | column_name | ordinal_position | column_default | is_nullable | data_type | character_maximum_length | numeric_precision | numeric_scale | remarks -------------------+-------------+------------+-------------+------------------+----------------+-------------+------------------------------+--------------------------+-------------------+------------------------ sample_data_dev | tickit | event | eventid | 1 | NULL | NO | integer | NULL | 32 | 0 | NULL sample_data_dev | tickit | event | eventid | 2 | NULL | NO | smallint | NULL | 16 | 0 | NULL sample_data_dev | tickit | event | eventid | 3 | NULL | NO | smallint | NULL | 16 | 0 | NULL sample_data_dev | tickit | event | eventid | 4 | NULL | NO | smallint | NULL | 16 | 0 | NULL sample_data_dev | tickit | event | eventid | 5 | NULL | YES | character varying | 200 | NULL | NULL | NULL sample_data_dev | tickit | event | eventid | 6 | NULL | YES | timestamp without time zo... | NULL | NULL | NULL | NULL

下列範例顯示 AWS Glue Data Catalog 資料庫中名為 awsdatacatalog 且在結構描述 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 | | |