メインコンテンツまでスキップ
バージョン: 4.x

ANALYZE

説明

このステートメントは列の統計情報を収集するために使用されます。列の統計情報は、Table(特定の列を指定可能)またはデータベース全体に対して収集することができます。

構文

ANALYZE {TABLE <table_name> [ (<column_name> [, ...]) ] | DATABASE <database_name>}
[ [ WITH SYNC ] [ WITH SAMPLE {PERCENT | ROWS} <sample_rate> ] ];

必須パラメータ

1. <table_name>

指定されたターゲットTable。このパラメータと<database_name>パラメータは、そのうちの1つのみを指定する必要があり、指定できるのは1つのみです。

2. <database_name>

指定されたターゲットデータベース。このパラメータと<table_name>パラメータは、そのうちの1つのみを指定する必要があり、指定できるのは1つのみです。

オプションパラメータ

1. <column_name>

指定されたターゲットカラム。table_name内の既存のカラムである必要があります。カンマで区切って複数のカラム名を指定できます。

2. WITH SYNC

統計情報を同期的に収集します。収集後に戻ります。指定されていない場合、非同期で実行されます。

3. WITH SAMPLE {PERCENT | ROWS} <sample_rate>

収集にサンプリング方式を使用することを指定します。指定されていない場合、デフォルトでフル収集が行われます。<sample_rate>はサンプリングパラメータです。PERCENTサンプリングを使用する場合、サンプリング率を指定します。ROWSサンプリングを使用する場合、サンプリングする行数を指定します。

戻り値

ColumnNote
Job_Id一意のJob Id
Catalog_NameCatalog名
DB_Namedatabase名
Columnscolumn名リスト

アクセス制御要件

このSQLを実行するユーザーは、少なくとも以下の権限を持つ必要があります:

PrivilegeObject注釈
SELECT_PRIVTableANALYZEを実行する際、クエリ対象Tableに対するSELECT_PRIV権限が必要です。

  1. Tablelineitemの10%をサンプリングして統計情報を収集する。
ANALYZE TABLE lineitem WITH SAMPLE PERCENT 10;
  1. Tablelineitemから100,000行をサンプリングして統計情報を収集する。
ANALYZE TABLE lineitem WITH SAMPLE ROWS 100000;