次の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);
次の問合わせを評価するとき、shot1配列内の各構成要素の値が加算されます。その後で、すべての構成要素の値の総合計をshot1配列内の構成要素数で除算します。
SELECT ARRAY_AVG(shot1) FROM seismic_data;
次の問合わせでは、ARRAY_AVGにより、shot1配列内の指定した適用範囲の参照内にある各構成要素が加算されます。結果は、影響を受けるshot1の構成要素の値を加算した総合計を、指定した適用範囲を構成する要素の総合計数で除算したものを表わすスカラー値です。
SELECT ARRAY_AVG(shot1, NEW arrayVec(5,5), NEW arrayVec(10,10)) FROM seismic_data;
次は、メソッドスタイルの構文を使用した同じ問合わせです。
SELECT shot1.ARRAY_AVG(NEW arrayVec(5,5), NEW arrayVec(10,10)) FROM seismic_data;