カテゴリ:

地理空間関数

ST_UNION_AGG

GEOGRAPHY 列が与えられると、その列のオブジェクトによって表される図形の少なくとも1つに含まれる点の集合(つまり、図形の和)を表す GEOGRAPHY オブジェクトを返します。

こちらもご参照ください。

ST_UNION , ST_INTERSECTION_AGG

構文

ST_UNION_AGG( <geography_column> )
Copy

引数

geography_column

GEOGRAPHY 列。

戻り値

この関数は、 GEOGRAPHY 型の値を返します。

GEOMETRY 列を含むテーブルを作成し、データを挿入します:

CREATE OR REPLACE TABLE st_union_agg_demo_table (g GEOGRAPHY);

INSERT INTO st_union_agg_demo_table VALUES
  ('POINT(1 1)'),
  ('POINT(0 1)'),
  ('LINESTRING(0 0, 0 1)'),
  ('LINESTRING(0 0, 0 2)'),
  ('POLYGON((10 10, 11 11, 11 10, 10 10))'),
  ('POLYGON((10 10, 11 11, 11 10, 10 10))');
Copy

ST_UNION_AGG 関数を使用して、 GEOGRAPHY 列のオブジェクトで表される図形の少なくとも1つに含まれる点の集合を表す GEOGRAPHY オブジェクトを返します。

ALTER SESSION SET GEOGRAPHY_OUTPUT_FORMAT = 'WKT';

SELECT ST_UNION_AGG(g) AS union_of_shapes
  FROM st_union_agg_demo_table;
Copy
+-------------------------------------------------------------------------------------------+
| UNION_OF_SHAPES                                                                           |
|-------------------------------------------------------------------------------------------|
| GEOMETRYCOLLECTION(POINT(1 1),LINESTRING(0 0,0 1,0 2),POLYGON((11 10,11 11,10 10,11 10))) |
+-------------------------------------------------------------------------------------------+