COUNT
SQL構文
COUNT ({* | [ALL | DISTINCT]{Expression|ROWID}})
[OVER ([AnalyticClause])]パラメータ
COUNTには、次のパラメータがあります。
| パラメータ | 説明 |
|---|---|
|
|
任意の数値データ型、または暗黙的に数値型に変換可能な数値以外の型を取ります。 行の数を返します。 |
|
|
|
|
|
集計関数の引数に重複する行を含めます。 |
|
|
集計関数の引数から、重複する列の値を削除します。 |
|
|
TimesTenでは、表に保存される各行にROWIDと呼ばれる一意のIDが割り当てられます。ROWID値は |
|
|
指定すると、集計分析関数を示します。分析関数の詳細は、「分析関数」を参照してください。 |
説明
-
デフォルトの戻り型は、
TT_BIGINTです。TT_CountAsIntオプティマイザ・ヒントを指定すると、COUNT関数がTT_INTEGERデータ型とTT_BIGINTデータ型のどちらを返すかを制御できます。このヒントに1の値を指定した場合、戻りデータ型はTT_INTEGERになります。0の値を指定した場合(またはこのヒントを指定しない場合)、戻りデータ型はTT_BIGINTになります。TT_CountAsIntオプティマイザ・ヒントは、文レベルおよび接続レベルでサポートされます。文レベルのオプティマイザ・ヒントの詳細は、「文レベルのオプティマイザ・ヒント」を参照してください。接続レベルのオプティマイザ・ヒントの詳細は、『Oracle TimesTen In-Memory Databaseリファレンス』の「OptimizerHint」を参照してください。 -
GROUP BY句が使用されていない空の表で集計関数を計算すると、COUNTは0を返します。 -
空のグループまたはグループ化された空の表(
GROUP BYを使用)で集計関数を計算すると、COUNTは何も返しません。 -
問合せで
AnalyticClauseを使用しない場合、COUNTは集計関数として機能します。 -
DISTINCTとAnalyticClauseを指定した場合は、QueryPartitionClauseのみを指定できます。OrderByClauseおよびWindowingClauseは指定できません。
例
従業員の数をカウントします。
Command> SELECT COUNT(*) "TOTAL EMP" FROM employees; TOTAL EMP < 107 > 1 row found.
個々のマネージャIDを重複しないように選択して、マネージャの数をカウントします。
Command> SELECT COUNT(DISTINCT manager_id) "Managers" FROM employees; MANAGERS < 18 > 1 row found.