SHOW DBT PROJECTS

アクセス権限のある dbtプロジェクトオブジェクト をリストします。

このコマンドを使用して、セッションの現在のデータベースとスキーマ、指定したデータベースまたはスキーマ、またはアカウント全体のオブジェクトをリストします。

出力には、各オブジェクトのメタデータとプロパティが含まれます。オブジェクトは、データベース、スキーマ、オブジェクト名で辞書順にソートされます(出力列の説明については、このトピックの Output をご参照ください)。結果をフィルターする場合は、結果の行の順序に注意することが重要です。

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

CREATE DBT PROJECTALTER DBT PROJECTEXECUTE DBT PROJECTDROP DBT PROJECTSHOW DBT PROJECTS

構文

SHOW DBT PROJECTS [ LIKE '<pattern>' ]
           [ IN
                {
                  ACCOUNT                  |

                  DATABASE                 |
                  DATABASE <database_name> |

                  SCHEMA                   |
                  SCHEMA <schema_name>     |
                  <schema_name>
                }
           ]
           [ STARTS WITH '<name_string>' ]
           [ LIMIT <rows> ]
           [ LIMIT <rows> [ FROM '<name_string>' ] ]
Copy

パラメーター

LIKE 'pattern'

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

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

... LIKE '%testing%' ...
... LIKE '%TESTING%' ...

. デフォルト: 値なし(フィルタリングは出力に非適用)。

[ IN ... ]

オプションで、コマンドのスコープを指定します。次のいずれかを指定します。

ACCOUNT

アカウント全体の記録を返します。

DATABASE. DATABASE db_name

現在使用中のデータベースまたは指定されたデータベース(db_name)の記録を返します。

db_name なしで DATABASE を指定し、かつデータベースが使用されていない場合、キーワードは出力に影響しません。

注釈

データベースコンテキストで IN 句を指定せずに SHOW コマンドを使用すると、予想よりも少ない結果になる可能性があります。

IN 句を使用しない場合、同じ名前のオブジェクトは一度だけ表示されます。例えば、 schema1 にテーブル t1 、そして schema2 にテーブル t1 があり、両方とも指定したデータベースコンテキストのスコープ内にある場合(つまり、選択したデータベースが schema1schema2 の親である場合)の場合、 SHOW TABLES は t1 テーブルの1つのみを表示します。

SCHEMA. SCHEMA schema_name

現在使用中のスキーマまたは指定されたスキーマ(schema_name)の記録を返します。

データベースが使用中の場合、または完全修飾 schema_name (例: db.schema) を指定する場合、 SCHEMA はオプションです。

データベースが使用されていない場合は、 SCHEMA を指定しても出力には影響しません。

IN ... を省略した場合、コマンドのスコープは、セッションで現在使用中のデータベースがあるかどうかによって異なります。

  • データベースが現在使用中の場合、コマンドはデータベースで表示する権限を持つオブジェクトを返します。これは、IN DATABASE を指定するのと同じ効果があります。

  • データベースが現在使用中の場合、コマンドはアカウントで表示する権限を持つオブジェクトを返します。これは、IN ACCOUNT を指定するのと同じ効果があります。

STARTS WITH 'name_string'

オプションで、オブジェクト名の先頭に表示される文字に基づいてコマンド出力をフィルタリングします。文字列は一重引用符で囲む必要があり、 大文字と小文字を区別します

たとえば、次の文字列は 異なる 結果を返します。

... STARTS WITH 'B' ...
... STARTS WITH 'b' ...

. デフォルト: 値なし(フィルターは出力に適用されない)

LIMIT rows

オプションで、返される行の最大数を制限します。実際に返される行数は、指定された制限より少ない場合があります。例えば、既存のオブジェクトの数が指定された制限より少ないなどです。

デフォルト: 値なし(出力に制限は非適用)。

LIMIT rows [ FROM 'name_string' ]

オプションで、返される行の最大数を制限すると同時に、結果の「ページネーション」を有効にします。実際に返される行数は、指定された制限より少ない場合があります。例えば、既存のオブジェクトの数が指定された制限より少ないなどです。

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

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

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

デフォルト:値なし(出力に制限は適用されない)

注釈

FROM 'name_string' 句と STARTS WITH 'name_string' 句の両方をサポートする SHOW コマンドの場合、同じステートメントでこれらの両方の句を組み合わせることができます。ただし、両方の条件を満たしている必要があります。そうでない場合、互いにキャンセルされ、結果が返されません。

さらに、オブジェクトは名前の辞書式順序で返されるため、 FROM 'name_string' は、 STARTS WITH 'name_string' によって返される行よりも辞書式の値が大きい行のみを返します。

例:

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

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

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

出力

コマンドの出力には、オブジェクトのプロパティとメタデータを説明する以下の列が含まれます。

説明

external_access_integrations

dbtパッケージハブまたはGithubからリモート依存関係をプルするためにdbtプロジェクトの使用を許可される外部アクセス統合の名前。

name

dbtプロジェクトオブジェクトの識別子。

database_name

dbtプロジェクトオブジェクトが定義されているデータベースの名前。

schema_name

dbtプロジェクトオブジェクトが定義されているスキーマの名前。

created_on

dbtプロジェクトオブジェクトが作成された日時。

updated_on

dbtプロジェクトオブジェクトが最後に更新された日時。

owner

dbtプロジェクトオブジェクトを所有するロールの名前。

comment

dbtプロジェクトオブジェクトに関連付けられたコメント。

dbt_snowflake_version

dbtプロジェクトオブジェクトがあるSnowflakeバージョン。

default_target

Snowflakeを介して使用されるdbtコマンドが使用するデフォルトの実行ターゲット(たとえば prod または dev )。

次の列は、非推奨のパラメーターの値を示しています。

説明

default_version

dbtプロジェクトオブジェクトのバージョン。

  • LAST: dbtプロジェクトオブジェクトの最新バージョン。

  • FIRST: dbtプロジェクトオブジェクトの最も古いバージョン。

default_version_name

VERSION$num 形式のバージョン識別子。この場合、 num は正の整数です(例: VERSION$1 )。

dbtプロジェクトオブジェクトを作成し、dbtプロジェクトオブジェクトの新しいバージョンごとに1つずつインクリメントする場合、バージョン番号は 1 で始まります。

Snowflakeは、次のタスクを実行するとバージョン識別子をインクリメントします。

  • ワークスペースからdbtプロジェクトを再デプロイします( ALTER コマンドを ADD VERSION オプションを指定して実行します)。

  • ALTER DBT PROJECT コマンドを使用してプロジェクトを更新します。

  • Snow CLI snow dbt deploy コマンドを --force オプションを指定して実行します。

Snowflakeはバージョン識別子を 1 にリセットし、 CREATE DBT PROJECT コマンドを OR REPLACE オプションを指定して実行するとすべてのバージョンエイリアスを削除します。

default_version_alias

ALTER DBT PROJECT コマンドを ADD VERSION オプションで使用して、dbtプロジェクトオブジェクトの特定のバージョンに対して作成したカスタムバージョン名のエイリアス。バージョン名のエイリアスは常に、 VERSION$3 のように特定のバージョン識別子にマッピングされます。

default_version_location_uri

デフォルトバージョンの場所 URI 。これは読み取り専用です。

default_version_source_location_uri

Gitオブジェクト内にある、デフォルトバージョンのソースファイルの場所 URI 。dbtプロジェクトオブジェクトがGitオブジェクトに接続されていない場合はnullです。

dbt_snowflake_version

dbtプロジェクトオブジェクトがあるSnowflakeバージョン。

アクセス制御の要件

この SQL コマンドの実行に使用される ロール には、 最低 1 つ の次の 権限 が必要です。

権限

オブジェクト

USAGE

dbtプロジェクト

MONITOR

dbtプロジェクト

スキーマ内のオブジェクトを操作するには、親データベースの少なくとも1つの権限と、親スキーマの少なくとも1つの権限が必要です。

指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。

セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。

使用上の注意

  • このコマンドの実行には、稼働中のウェアハウスは必要ありません。

  • このコマンドは、現在のユーザーの現在のロールに少なくとも1つのアクセス権限が付与されているオブジェクトのみを返します。

  • MANAGE GRANTS アクセス権限により、所有者はアカウント内のすべてのオブジェクトを暗黙的に参照できます。デフォルトでは、アカウント管理者( ACCOUNTADMIN ロールを持つユーザー)とセキュリティ管理者( SECURITYADMIN ロールを持つユーザー)のみが MANAGE GRANTS 権限を持っています。

  • このコマンドの出力を後処理するには、 パイプ演算子->>)または RESULT_SCAN 関数。どちらのコンストラクトも、出力を クエリできる結果セットとして扱います。

    たとえば、パイプ演算子または RESULT_SCAN 関数を使用して、 SHOW コマンド出力から特定の列を選択したり、行をフィルター処理したりできます。

    出力列を参照する場合は、列名に 二重引用符で囲まれた識別子 を使用します。たとえば、出力列 type を選択するには、 SELECT "type" を指定します。

    SHOW コマンドの出力列名は小文字のため、二重引用符で囲まれた識別子を使用する必要があります。二重引用符により、 SELECT リストまたは WHERE 句内の列名が、スキャンされた SHOW コマンド出力内の列名と一致することが保証されます。

  • コマンドは、コマンドを実行するために使用されるロールのアクセス権限によって決定された通り、指定されたオブジェクトタイプに対して 最大 1万件の記録を返します。1万件を超える記録は、フィルターを適用しても返されません。

    1万件を超える記録が存在する結果を表示するには、 Snowflake Information Schema で対応するビュー(存在する場合)をクエリします。

  • LIMIT rows の値は 10000 を超えることはできません。LIMIT rows を省略した場合、結果セットが1万行を超えるとコマンドはエラーになります。

    1万件を超える記録が存在する結果を表示するには、 LIMIT rows を含めるか、 Snowflake Information Schema の対応するビューをクエリします。

次の例は、 public スキーマ内の my_db データベースにおいて、表示権限を持っているdbtプロジェクトオブジェクトをリストします。

SHOW DBT PROJECTS IN DATABASE my_db;
Copy
+-----------------------------+----------------+---------------+-------------+-------------------------------+-------------------------------+--------------+---------+-----------------+----------------------+-----------------------+------------------------------------------------------------+-------------------------------------+-----------------------+----------------+
| external_access_integrations |    name        | database_name | schema_name |          created_on           |          updated_on           |    owner     | comment | default_version | default_version_name | default_version_alias | default_version_location_uri                               | default_version_source_location_uri | dbt_snowflake_version | default_target |
+-----------------------------+----------------+---------------+-------------+-------------------------------+-------------------------------+--------------+---------|-----------------|----------------------|-----------------------+------------------------------------------------------------+-------------------------------------+-----------------------+----------------+
| my_ext_integration_1        | COSMOS         | MY_DB         | PUBLIC      | 2025-04-29 17:21:25.413 -0700 | 2025-04-29 17:21:29.462 -0700 | ACCOUNTADMIN |         | LAST            | VERSION$1            | null                  | snow://dbt/MY_DB.PUBLIC.COSMOS/versions/version$1/         | @s1                                 | 1.9.2b                | null           |
| my_ext_integration_1        | Jaffle_shop    | MY_DB         | PUBLIC      | 2025-03-25 12:36:16.574 -0700 | 2025-03-25 12:36:17.833 -0700 | ACCOUNTADMIN |         | LAST            | VERSION$1            | null                  | snow://dbt/MY_DB.PUBLIC.Jaffle_shop/versions/version$1/    | @s1                                 | 1.9.2b                | prod           |
| my_ext_integration_2        | MY_DBT_PROJECT | MY_DB         | PUBLIC      | 2025-05-02 13:42:36.306 -0700 | 2025-05-02 13:42:38.584 -0700 | ACCOUNTADMIN |         | LAST            | VERSION$1            | null                  | snow://dbt/MY_DB.PUBLIC.MY_DBT_PROJECT/versions/version$1/ | @s1                                 | 1.9.2b                | dev            |
| null                        | MY_SHOP        | MY_DB         | PUBLIC      | 2025-04-29 17:15:27.295 -0700 | 2025-04-29 17:15:28.709 -0700 | ACCOUNTADMIN |         | LAST            | VERSION$1            | null                  | snow://dbt/MY_DB.PUBLIC.MY_SHOP/versions/version$1/        | @s1                                 | 1.9.2b                | null           |
+-----------------------------+----------------+---------------+-------------+-------------------------------+-------------------------------+--------------+---------+-----------------+----------------------+-----------------------+------------------------------------------------------------+-------------------------------------+-----------------------+----------------+