カテゴリ:

データパイプライン DDL

SHOW STREAMS

アクセス権限があるストリームをリストします。このコマンドを使用して、現在の/指定されたデータベースまたはスキーマ、またはアカウント全体のストリームを一覧表示できます。

出力は、データベース、スキーマ、およびストリーム名によって辞書順に並べられたストリームメタデータとプロパティを返します(出力列の説明については、このトピックの 出力 を参照)。これは、提供されたフィルターを使用して結果をフィルターする場合に注意することが重要です。

こちらもご参照ください:

CREATE STREAMDROP STREAM

構文

SHOW [ TERSE ] STREAMS [ HISTORY ] [ LIKE '<pattern>' ]
                                   [ IN { ACCOUNT | DATABASE [ <db_name> ] | [ SCHEMA ] [ <schema_name> ] } ]
                                   [ STARTS WITH '<name_string>' ]
                                   [ LIMIT <rows> [ FROM '<name_string>' ] ]

パラメーター

TERSE

出力列のサブセットのみを返します。

  • created_on

  • name

  • kind (列のフルセットの type 列の名前を変更)

  • database_name

  • schema_name

  • tableOn (列のフルセットの table_name 列の名前を変更)

HISTORY

必要に応じて、まだパージされていない(つまり、それぞれのTime Travel保持期間内にある)ドロップされたストリームを含めます。ドロップされたストリームに複数のバージョンが存在する場合、出力には各バージョンの行が表示されます。出力には、追加の dropped_on 列も含まれ、次を表示します:

  • 日付とタイムスタンプ(ドロップされたストリームの場合)。

  • NULL (アクティブなストリームの場合)。

デフォルト:値なし(ドロップされたストリームは出力に 含まれない

注釈

このパラメーターは現在サポートされていません。

LIKE 'パターン'

オブジェクト名でコマンド出力をフィルタリングします。フィルターは、 SQL ワイルドカード文字(% および _)をサポートする、 大文字と小文字を区別しない パターンマッチングを使用します。

たとえば、次のパターンは 同じ 結果を返します。

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...
IN ACCOUNT | [ DATABASE ] データベース名 | [ SCHEMA ] スキーマ名

コマンドのスコープを指定します。これは、コマンドが現在/指定されたデータベースまたはスキーマのレコードのみを一覧表示するか、アカウント全体に表示するかを決定します。

DATABASE または SCHEMA キーワードは必須ではありません。データベースまたはスキーマ名のみを指定して、スコープを設定できます。同様に、セッションで現在使用中のデータベースがある場合、データベース名またはスキーマ名は必要ありません。

  • DATABASE または SCHEMA が名前なしで指定され、セッションで現在使用中のデータベースがない場合、パラメーターは出力に影響しません。

  • SCHEMA が名前で指定され、セッションで現在使用中のデータベースがない場合、スキーマ名はデータベース名で完全修飾する 必要があります (例: testdb.testschema)。

デフォルト:セッションで現在使用中のデータベースがあるかどうかによって異なります。

  • データベース: DATABASE はデフォルトです(つまり、コマンドは、データベースで表示する権限を持つオブジェクトを返す)。

  • データベースなし: ACCOUNT はデフォルトです(つまり、コマンドは、アカウントで表示する権限を持つオブジェクトを返す)。

STARTS WITH '名前文字列'

オブジェクト名の先頭に表示される文字列に基づいてコマンド出力をフィルターします。文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します。たとえば、次の結果は 異なる 結果を返します。

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...
LIMIT [ FROM '名前文字列' ]

返される の最大数を制限することにより、結果の「ページネーション」を有効にします。返される実際の行数は、指定された制限より少ない場合があることに注意してください(例えば、オブジェクトの数が指定された制限より少ない場合)。

この句には、結果の「カーソル」として効果的に機能する FROM 副次句を含めることもできます。これにより、指定された文字列と一致するオブジェクト名を持つ最初の行に続く指定された行数を取得できます。

  • 文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します

  • 文字列に完全なオブジェクト名を含める必要はありません。部分的な名前がサポートされています。

注釈

FROM 同じステートメントで STARTS WITH と組み合わせることができます。ただし、両方の条件を満たしている必要があります。そうでない場合、互いにキャンセルされ、結果が返されません。さらに、オブジェクトは名前の辞書式順序で返されるため、 FROM は、 STARTS WITH によって返される行よりも辞書式の値が大きい行のみを返します。

例:

  • ... STARTS WITH 'A' LIMIT ... FROM 'B' は結果を返しません。

  • ... STARTS WITH 'B' LIMIT ... FROM 'A' は結果を返しません。

  • ... STARTS WITH 'A' LIMIT ... FROM 'AB' は結果を返します(入力文字列に一致する行がある場合)。

使用上の注意

  • このコマンドは、実行中のウェアハウスを必要としません。

  • LIMIT の値は 10000 を超えることはできません。 LIMIT が省略され、結果セットが10K行より大きい場合、コマンドはエラーになります。

    10Kを超えるレコードが存在する結果を表示するには、 LIMIT を含めるか、 情報スキーマ の対応するビューをクエリします。

  • このコマンドの出力を後処理するには、 RESULT_SCAN 関数を使用できます。この関数は、出力をクエリ可能なテーブルとして扱います。

出力

コマンド出力では、次の列にストリームプロパティとメタデータが提供されます。

| created_on | name | database_name | schema_name | owner | comment | table_name | type | stale | mode

説明

created_on

ストリームが作成された日時。

name

ストリームの名前。

database_name

ストリームのスキーマのデータベース。

schema_name

ストリームのスキーマ。

owner

ストリームを所有するロール。

comment

ストリームのコメント。

table_name

DML の更新がストリームによって追跡されるテーブル。

type

ストリームのタイプ。現在 DELTA のみ。

stale

ストリームのオフセットが、テーブルのデータ保持期間(または14日、いずれか長い方)より前のポイントに配置されているかどうかを示します。テーブルの変更データキャプチャ(CDC)アクティビティを返すことができません。テーブルの CDC アクティビティを返すには、ストリームを再作成します。ストリームが古くなるのを防ぐには、テーブルの保持期間中にトランザクション内でストリームレコードを消費します。

mode

ストリームが追加専用ストリームの場合は、 APPEND_ONLY を表示します。

ストリームに指定できるプロパティの詳細については、 CREATE STREAM をご参照ください。

tpch.public スキーマで表示する権限がある、名前が line で始まるすべてのストリームを表示します。

SHOW STREAMS LIKE 'line%' IN tpch.public;

ドロップされたストリームを含め、 tpch.public スキーマで表示する権限があるすべてのストリームを表示します。

SHOW STREAMS HISTORY IN tpch.public;