カテゴリ:

データメトリック関数

UNIQUE_COUNT (システムデータメトリック関数)

テーブルにある指定された列の非 NULL の一意な値の合計数を返します。

このトピックでは、関数を直接呼び出すための構文を提供します。関数をテーブルまたはビューに関連付け、一定の間隔で実行する方法については、DMF と関連付けて、データ品質チェックを自動化します。 をご参照ください。

構文

SNOWFLAKE.CORE.UNIQUE_COUNT(<query>)
Copy

引数

query

単一の列を投影する SQL クエリを指定します。

許可されるデータ型

query によって投影された列には、以下のデータ型のいずれかが必要です。

  • DATE

  • FLOAT

  • NUMBER

  • TIMESTAMP_LTZ

  • TIMESTAMP_NTZ

  • TIMESTAMP_TZ

  • VARCHAR

戻り値

この関数は、 NUMBER データ型のスカラー値を返します。

アクセス制御の要件

システム DMF の関連付けと実行には、システム DMF に対する USAGE 権限が必要です。SNOWFLAKE.DATA_METRIC_USER データベースロールを付与すると、ユーザーにすべてのシステム DMFs に対する USAGE 権限を付与できます。詳細については、 システム DMFs に対する USAGE 権限を付与する をご参照ください。

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

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

使用上の注意

システム DMF を手動で呼び出す場合は、使用する許容データ型を指定する必要はありません。測定する列のクエリを指定するだけです。Snowflakeは、関数の許容データ型と列のデータ型を照合します。

SSN 列(つまり、 US 社会保障番号)の NULL 以外の一意な値の数を測定します。

SELECT SNOWFLAKE.CORE.UNIQUE_COUNT(
  SELECT
    ssn
  FROM hr.tables.empl_info
);
Copy
+------------------------------------------------------------------+
| SNOWFLAKE.CORE.UNIQUE_COUNT(SELECT ssn FROM hr.tables.empl_info) |
+------------------------------------------------------------------+
| 42                                                               |
+------------------------------------------------------------------+