- カテゴリ:
MAX (システムデータメトリック関数)¶
テーブル内にある指定した列の最大値を返します。
MAX システムデータメトリック関数は、単一列の最大値を計算するように最適化されており、 MAX 関数を呼び出す場合と比較してより高いパフォーマンスを提供します。
このトピックでは、関数を直接呼び出すための構文を提供します。関数をテーブルまたはビューに関連付け、一定の間隔で実行する方法については、DMF と関連付けて、データ品質チェックを自動化します。 をご参照ください。
構文¶
SNOWFLAKE.CORE.MAX(<query>)
引数¶
query
単一の列を投影する SQL クエリを指定します。
許可されるデータ型¶
query
によって投影された列には、以下のデータ型のいずれかが必要です。
FLOAT
NUMBER
戻り値¶
この関数は NUMBER または FLOAT のいずれかの値を返します。
アクセス制御の要件¶
システムDMFを使用するには、次のアクセス制御アプローチのいずれかを選択します。
テーブルに対する OWNERSHIP 権限を持つロールであるテーブル所有者ロールに、DATA_METRIC_USERデータベースロールを付与します。このデータベースロールは、SNOWFLAKE.CORE スキーマに対する USAGE 権限と、SNOWFLAKE.CORE スキーマにあるすべてのシステム DMFs に対する USAGE 権限を持ちます。
さらに、テーブル所有者ロールに次の権限を付与します。
権限
オブジェクト
メモ
EXECUTE DATA METRIC FUNCTION
アカウント
この権限により、どのロールがサーバーレスのコンピューティングリソースにアクセスできるかを制御し、システムDMFを呼び出すことができます。
USAGE
データベース、スキーマ
これらのオブジェクトは、 DMF が関連付けられているtable.referencedテーブルを含むデータベースとスキーマです。
テーブル所有者ロールに SNOWFLAKE データベースでの IMPORTED PRIVILEGES を付与します。詳細は、他のロールが SNOWFLAKE データベースのスキーマを使用できるようにする をご参照ください。
ACCOUNTADMIN ロールを使用します。
指定された権限のセットを使用してカスタムロールを作成する手順については、 カスタムロールの作成 をご参照ください。
セキュリティ保護可能なオブジェクト に対して SQL アクションを実行するためのロールと権限付与に関する一般的な情報については、 アクセス制御の概要 をご参照ください。
例¶
テーブル内にある salary
列の最大値を測定します。
SELECT SNOWFLAKE.CORE.MAX(
SELECT
salary
FROM hr.tables.empl_info);
+------------------------------------------------------------+
| SNOWFLAKE.CORE.MAX(SELECT salary FROM hr.tables.empl_info) |
+------------------------------------------------------------+
| 325000 |
+------------------------------------------------------------+