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

ApsaraDB RDS:ST_SubRaster

最終更新日:Mar 29, 2026

ラスターオブジェクトから指定されたピラミッドレベルまたはバンドのサブセットを抽出し、結果を新しいラスターオブジェクトとして返します。

構文

raster ST_SubRaster(raster raster_obj,
                    integer pyramidLevel default 0,
                    cstring bands default '',
                    cstring storageOption default '',
                    cstring options default '{}')

パラメーター

パラメーターデフォルト説明
raster_objrasterソースラスターオブジェクト。
pyramidLevelinteger0抽出するピラミッドレベル。
bandscstring''抽出するバンド。整数範囲 ('0-2') またはカンマ区切りリスト ('1,2,3') を指定できます。バンドインデックスは 0 から始まります。デフォルト値 ('') ではすべてのバンドが抽出されます。
storageOptioncstring''新しいラスターオブジェクトのストレージ方法を制御する JSON 文字列です。詳細については、「storageOption パラメーター」をご参照ください。
optionscstring'{}'新しいラスターオブジェクトの生成方法を制御する JSON 文字列です。詳細については、「options パラメーター」をご参照ください。

storageOption パラメーター

storageOption のすべてのサブパラメーターは省略可能です。指定されなかったパラメーターは、ソースラスターオブジェクトの値を継承します。

よく使用されるパラメーター

パラメーターデフォルト説明
chunktablestring''新しいラスターオブジェクトのチャンクテーブル名。 '' または NULL を指定すると、ランダムな名前の一時チャンクテーブルが作成され、現在のセッションでのみ有効になります。永続的なチャンクテーブルを作成する場合は、名前を明示的に指定してください。
compressionstringソースと同じ圧縮フォーマット。有効な値:NONEJPEGZLIBPNGLZOLZ4
celltypestringソースと同じピクセルタイプ。有効な値:1bb2bui4bui8bsi8bui16bsi16bui32bsi32bui64bsi64bui32bf64bf
chunkingbooleanソースと同じ新しいラスターオブジェクトをチャンク単位で保存するかどうかを指定します。

高度なパラメーター

パラメーターデフォルト説明
chunkdimstringソースと同じチャンクディメンション。chunkingtrue の場合にのみ有効です。
qualityintegerソースと同じ圧縮後の画像品質 (1~99)。compressionJPEG の場合にのみ有効です。
interleavingstringソースと同じインターリービングタイプ。有効な値:bip (band interleaved by pixel、BIP)、bil (band interleaved by line、BIL)、bsq (band sequential、BSQ)。
endianstringソースと同じバイトオーダー。有効な値:NDR (リトルエンディアン)、XDR (ビッグエンディアン)。

options パラメーター

パラメーターデフォルト説明
parallelintegerganos.parallel.degree並列処理の次数。有効な値:1~64。
stretchstringnone画素値のストレッチ方法。有効な値:none (範囲外の値を最も近い極値に置き換え)、stats (ラスター統計に基づいてストレッチ — 事前に計算された統計が必要。以下の注を参照)、data_type (ピクセルタイプの値範囲に基づいてストレッチ)。
stretchstats に設定されている場合、ソース ラスタ オブジェクトには事前計算済みの統計情報が必要です。ソース ラスタ オブジェクトに対して ST_SummaryStats を呼び出した後で、ST_SubRaster を呼び出します。

使用例

ラスターオブジェクトからバンドを抽出する

ピラミッドレベル 1 からバンド 0~2 を抽出し、結果を永続的なチャンクテーブルに保存します。

SELECT ST_SubRaster(rast, 1, '0-2', '{"chunktable":"chunk_table", "chunking":true}')
FROM raster_sub
WHERE id = 1;

ピクセルタイプを変換し、画素値を並列でストレッチする

並列度 4 で data_type ストレッチを使用して、8 ビット符号なし整数 (8BUI) に変換します。

SELECT ST_SubRaster(rast, 1, '0-2', '{"chunktable":"chunk_table", "chunking":true, "celltype": "8BUI"}', '{"stretch": "data_type", "parallel": 4}')
FROM raster_sub
WHERE id = 1;