目的
各グループから目的のパーセンタイルを表わす値を返します。PERCENTILEは単一スレッド関数です。
この関数の時系列バージョンを呼び出すには、GROUP BY TIME句を使用します。詳細は、GROUP BY TIME句を参照してください。
構文
構文要素
- ALL
- 計算の、重複を含むすべての非NULL value_expressions。
- DISTINCT
- value_expressionで指定された重複を計算から除外します。
- value_expression
- 連続する値に対して一連の集約関数が計算されるリテラルまたは列式。
value_expressionは、関数によって得られたビュー列に対する参照にはできません。また、順序付き分析関数や集約関数を含めることはできません。
- percentile
- 目的のパーセンタイルを表わすTeradata DatabaseリテラルFLOAT値。
- LINEAR
目的の結果が2つのデータ ポイントの間にある場合は、線形補間を使用して結果値を補間します。
このパラメータは大文字小文字を区別しません。
- LOW
目的の結果が2つのデータ ポイントの間にある場合、低値の補間スキーマを使用して結果値を補間します。
このパラメータは大文字小文字を区別しません。
- HIGH
- 目的の結果が2つのデータ ポイントの間にある場合は、高い値の補間スキーマを使用して結果値を補間します。
- NEAREST
- 目的の結果が2つのデータ ポイントの間にある場合は、最近似値の補間スキーマを使用して結果値を補間します。
- MIDPOINT
- 目的の結果が2つのデータ ポイントの間にある場合、中間値の補間スキーマを使用して結果値を補間します。
戻り値
この関数は、REALデータ型を返します。
結果の計算にはNULLは含められません。
結果の値は、値の順序付きリストでの目的のインデックス(di)によって決定されます。次の式は、diのためのものです。
di = (number of values in group - 1) * percentile/100
diが整数の場合、その値が返される結果になります。diはまた、2つのデータポイントiとjの間に存在させることができます(その場合にはi<jです)。この場合、結果は次のスキーマのいずれかに従って補間されます。
- 線形補間。結果の値は、次の式を使用して計算されます。
result = i + (j - i) * (di/100)MOD 1
オプションの補間パラメータに値LINEARを使用して指定します。LINEARは補間のデフォルトのスキーマです。
- 低い値。結果値はiと等しくなります。オプションの補間パラメータに値LOWを使用して指定します。
- 高い値。結果値はjと等しくなります。オプションの補間パラメータに値HIGHを使用して指定します。
- 最近似値。結果値は(di/100)MOD 1 <= .5の場合、iです。そうでない場合、jです。オプションの補間パラメータに値NEARESTを使用して指定します。
- 中間値。結果値は(i+j)/2と等しくなります。オプションの補間パラメータに値MIDPOINTを使用して指定します。
使用上の注意
PERCENTILEは、数値データに対してのみ有効です。