SVV_REDSHIFT_COLUMNS - Amazon Redshift
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

SVV_REDSHIFT_COLUMNS

使用 SVV_REDSHIFT_COLUMNS 查看用户有权访问的所有列的列表。这组列包括集群上的列以及远程集群提供的数据共享中的列。

SVV_REDSHIFT_COLUMNS 对所有用户可见。超级用户可以查看所有行;普通用户只能查看其具有访问权限的元数据。

表列

列名称 数据类型 描述
database_name varchar(128) 包含列的表所在的数据库的名称。
schema_name varchar(128) 表的架构的名称。
table_name varchar(128) 表的名称。
column_name varchar(128) 列的名称。
ordinal_position integer

列在表中的位置。

data_type varchar(32) 列的数据类型。
column_default varchar(4000)

列的默认值。

is_nullable varchar(3)

一个定义列是否可为 null 的值。可能的值为 yesno和 " " " (表示无信息的空字符串)。

编码 varchar(128) 列的编码类型。
distkey 布尔值 如果该列是表的分配键,则为 true 的值,否则为 false。
sortkey integer

该值指定排序键中列的顺序。

如果表使用一个复合排序键,则排序键中的所有列将具有一个正值,该值指示列在排序键中的位置。

如果表使用交错排序键,则作为排序键一部分的每个列都具有一个正值或负值。在这里,绝对值指示列在排序键中的位置。

如果 sortkey 为 0,则列不是排序键的一部分。

column_acl varchar(128) 一个字符串,定义列的指定用户或用户组的权限。
备注 varchar(256) 备注。

示例查询

以下示例返回 SVV_REDSHIFT_COLUMNS 的输出。

SELECT * FROM svv_redshift_columns WHERE database_name = 'tickit_db' AND TABLE_NAME = 'tickit_sales_redshift' ORDER BY COLUMN_NAME, TABLE_NAME, database_name LIMIT 5; database_name | schema_name | table_name | column_name | ordinal_position | data_type | column_default | is_nullable | encoding | distkey | sortkey | column_acl | remarks --------------+-------------+-----------------------+-------------+------------------+-----------+----------------+-------------+----------+---------+---------+-------------+-------- tickit_db | public | tickit_sales_redshift | buyerid | 4 | integer | | NO | az64 | False | 0 | | tickit_db | public | tickit_sales_redshift | commission | 9 | numeric | (8,2) | YES | az64 | False | 0 | | tickit_db | public | tickit_sales_redshift | dateid | 6 | smallint | | NO | none | False | 1 | | tickit_db | public | tickit_sales_redshift | eventid | 5 | integer | | NO | az64 | False | 0 | | tickit_db | public | tickit_sales_redshift | listid | 2 | integer | | NO | az64 | True | 0 | |