すべてのプロダクト
Search
ドキュメントセンター

PolarDB:ST_Quantile

最終更新日:Mar 29, 2026

ラスターオブジェクトの指定された分位数における画素値をクエリします。

ST_Quantile を呼び出す前に、ラスターオブジェクトに対して ST_StatsQuantile を実行してください。ST_Quantile は、統計値を再計算するのではなく、事前に計算済みの統計情報を読み取ります。

構文

setof record ST_Quantile(raster raster_obj,
                   float8[] quantiles default NULL,
                   cstring bands default '',
                   boolean exclude_nodata_value default true,
                   out integer band,
                   out float8 quantile,
                   out float8 value)

パラメーター

パラメーターデフォルト説明
raster_objrasterクエリ対象のラスターオブジェクトです。
quantilesfloat8[]NULL計算対象の分位数を指定します。有効な値は 0.250.50.75 です。1 つ以上の値を配列形式で指定します。NULL を指定した場合、すべての 3 つの分位数(0.25、0.5、0.75)が返されます。
bandscstring''含めるバンドを指定します。「0-2」のように範囲を指定するか、「1,2,3」のように個別のバンドをカンマ区切りで指定します。バンドのシリアル番号は 0 から始まります。空文字列を指定すると、すべてのバンドが選択されます。
exclude_nodata_valuebooleantrueNoData ピクセルを計算から除外するかどうかを指定します。
band(出力)integerバンドのシリアル番号です。
quantile(出力)float8分位数の値です。
value(出力)float8その分位数における画素値です。

使用例

すべての使用例では、rat_quantile テーブルを使用し、setof record の結果を .* で展開しています。

すべてのバンドについて、0.25 分位数の画素値をクエリします。

SELECT (ST_Quantile(rast, ARRAY[0.25], '0-2', true)).* FROM rat_quantile WHERE id = 1;
 band | quantile | value
------+----------+-------
    0 |     0.25 |    11
    1 |     0.25 |    10
    2 |     0.25 |    50
(3 rows)

バンド 0 について、0.25、0.5、0.75 の各分位数の画素値をクエリします。

NULLquantiles パラメーターに指定すると、一般的な 3 つの分位数すべてが返されます。

SELECT (ST_Quantile(rast, NULL, '0', true)).* FROM rat_quantile WHERE id = 1;
 band | quantile | value
------+----------+-------
    0 |     0.25 |    11
    0 |      0.5 |    11
    0 |     0.75 |    65
(3 rows)