次の2-D ARRAYデータ型およびテーブルについて考えてみましょう。
CREATE TYPE shot_ary AS INTEGER ARRAY[1:50][1:50]; CREATE TABLE seismic_data ( id INTEGER, shot1 shot_ary, shot2 shot_ary);
次の問合わせは、すべての構成要素は新しい値に更新されたshort1配列の更新後のコピーを返します。
SELECT ARRAY_UPDATE(shot1, 0) FROM seismic_data;
次の問合わせは、適用範囲の参照で指定したように、構成要素のサブセットが新しい値に更新されたshort1配列の更新後のコピーを返します。その結果、適用範囲の参照範囲[5:10][5:10]内にある構成要素は新しい値に更新されます。配列内の残りの構成要素は元の値のままです。
SELECT ARRAY_UPDATE(shot1, 0, NEW arrayVec(5,5), NEW arrayVec(10,10)) FROM seismic_data;