メニュー
Amazon Redshift
データベース開発者ガイド (API Version 2012年12月1日)

カタログテーブルへのクエリの実行

通常、カタログテーブルとビュー (名前が PG_ で始まる関係) を Amazon Redshift テーブルとビューに結合できます。

カタログテーブルは、Amazon Redshift がサポートしない多数のデータ型を使用します。クエリでカタログテーブルを Amazon Redshift テーブルに結合するときは、次のデータ型がサポートされます。

  • ブール

  • "char"

  • float4

  • int2

  • int4

  • int8

  • name

  • oid

  • text

  • varchar

サポートされないデータ型を持つ列を明示的または暗黙的に参照する結合クエリを記述すると、クエリはエラーを返します。カタログテーブルの一部で使用される SQL 関数も、PG_SETTINGS および PG_LOCKS テーブルで使用されるものを除いてサポートされません。

たとえば、サポートされない関数のため、PG_STATS テーブルに対して Amazon Redshift テーブルとの結合でクエリを実行することはできません。

次のカタログテーブルとビューは、Amazon Redshift テーブルの情報に結合できる有益な情報を提供します。これらのテーブルの一部では、データ型と関数の制約のため、部分的なアクセスのみが許可されます。部分的にアクセス可能なテーブルにクエリを実行するときは、列を慎重に選択または参照してください。

次のテーブルは完全にアクセス可能で、サポートされない型または関数は含まれません。

次のテーブルは部分的にアクセス可能で、サポートされない型、関数、および切り捨てられたテキスト列をいくつか含みます。テキスト列の値は varchar(256) 値に切り捨てられます。

ここにリストされていないカタログテーブルはアクセス不可能であるか、Amazon Redshift 管理者にとって有益でない可能性があります。ただし、Amazon Redshift テーブルへの結合がクエリに含まれていない場合は、任意のカタログテーブルまたはビューに対してオープンにクエリを実行できます。

Postgres カタログテーブルの OID 列を結合列として使用できます。例えば、結合条件 pg_database.oid = stv_tbl_perm.db_id は、STV_TBL_PERM テーブルで表示される DB_ID 列を持つ各 PG_DATABASE 行の内部データベースオブジェクト ID に一致します。OID 列は、テーブルからの選択時に表示されない内部プライマリキーです。カタログビューには OID 列はありません。