Lindorm GanosBase 時空間サービスのアクセス関数を使用することで、ポイントや座標値などのジオメトリプロパティを迅速に取得できます。これらの関数は、空間データ処理フローを簡素化し、データ分析の容易さと精度を向上させます。このトピックでは、Lindorm がサポートするアクセス関数について説明します。
エンジンとバージョン
アクセス関数は LindormTable にのみ適用されます。バージョンの要件はありません。
関数リスト
次の表に、Lindorm GanosBase がサポートするアクセス関数を示します。
関数 | 説明 |
指定された Geometry オブジェクトの重心を返します。 | |
指定された LineString オブジェクトの終点を返します。 | |
指定された Geometry オブジェクトの頂点数を返します。 | |
指定された LineString オブジェクトの始点を返します。 | |
指定された Point オブジェクトの X 座標値を返します。 | |
指定された Geometry オブジェクトのバウンディングボックスの最大 X 座標を返します。 | |
指定された Geometry オブジェクトのバウンディングボックスの最小 X 座標を返します。 | |
指定された Point オブジェクトの Y 座標値を返します。 | |
指定された Geometry オブジェクトのバウンディングボックスの最大 Y 座標を返します。 | |
指定された Geometry オブジェクトのバウンディングボックスの最小 Y 座標を返します。 |
ST_Centroid
指定された Geometry オブジェクトの重心を返します。
構文
geometry ST_Centroid(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトが空の場合、この関数は空のジオメトリを返します。
例
例 1
SELECT ST_AsText(ST_Centroid(ST_Collect(ST_MakePoint(1,1),ST_MakePoint(-1,-1)))) AS astext;次の結果が返されます。
+-------------+ | astext | +-------------+ | POINT (0 0) | +-------------+例 2
SELECT ST_AsText(ST_Centroid(ST_GeomFromText('LINESTRING(0 0,0 1,1 2)'))) AS astext;次の結果が返されます。
+--------------------------------+ | astext | +--------------------------------+ | POINT (0.2928932188134525 | | 1.085786437626905) | +--------------------------------+
ST_EndPoint
指定された LineString オブジェクトの終点を返します。
構文
geometry ST_EndPoint(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトが LineString 型でない場合、この関数は NULL を返します。
例
SELECT ST_AsText(ST_EndPoint(ST_GEOMFROMTEXT('LINESTRING(1 1, 2 2, 3 3)'))) AS endpoint;次の結果が返されます。
+-------------+
| endpoint |
+-------------+
| POINT (3 3) |
+-------------+ST_NPoints
指定された Geometry オブジェクトの頂点数を返します。この関数は、任意の Geometry オブジェクトに適用されます。
構文
int ST_NPoints(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
例
SELECT ST_NPoints(ST_GeomFromText('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)')) AS npoints;次の結果が返されます。
+---------+
| npoints |
+---------+
| 4 |
+---------+ST_StartPoint
指定された LineString オブジェクトの始点を返します。
構文
geometry ST_StartPoint(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトが LineString 型でない場合、この関数は NULL を返します。
例
SELECT ST_AsText(ST_StartPoint(ST_GEOMFROMTEXT('LINESTRING(0 1, 0 2)'))) AS startpoint;次の結果が返されます。
+-------------+
| startpoint |
+-------------+
| POINT (0 1) |
+-------------+ST_X
指定された Point オブジェクトの X 座標値を返します。
構文
BigDecimal ST_X(geometry a_point)パラメーターの説明
パラメーター | 説明 |
a_point | 指定された Point オブジェクト。 |
入力 Geometry オブジェクトは Point 型である必要があります。入力 Geometry オブジェクトが EMPTY であるか、入力値が NULL の場合、この関数は NULL を返します。
例
SELECT ST_X(ST_MakePoint(1.0, 2.0)) AS x;次の結果が返されます。
+---+
| x |
+---+
| 1 |
+---+ST_XMax
指定された Geometry オブジェクトのバウンディングボックスの最大 X 座標を返します。
構文
BigDecimal ST_XMax(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトは、Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon、または GeometryCollection オブジェクトのいずれかです。
Geometry オブジェクトが EMPTY の場合、この関数は -1 を返します。
例
SELECT ST_XMax(ST_GeomFromText('LINESTRING(1 3,5 6)')) AS xmax;次の結果が返されます。
+------+
| xmax |
+------+
| 5 |
+------+ST_XMin
指定された Geometry オブジェクトのバウンディングボックスの最小 X 座標を返します。
構文
BigDecimal ST_XMin(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトは、Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon、または GeometryCollection オブジェクトのいずれかです。
Geometry オブジェクトが EMPTY の場合、この関数は 0 を返します。
例
SELECT ST_XMin(ST_GeomFromText('LINESTRING(1 3,5 6)')) AS xmin;次の結果が返されます。
+------+
| xmin |
+------+
| 1 |
+------+ST_Y
指定された Point オブジェクトの Y 座標値を返します。
構文
BigDecimal ST_Y(geometry a_point)パラメーターの説明
パラメーター | 説明 |
a_point | 指定された Point オブジェクト。 |
入力 Geometry オブジェクトは Point 型である必要があります。入力 Geometry オブジェクトが EMPTY であるか、入力値が NULL の場合、この関数は NULL を返します。
例
SELECT ST_Y(ST_MakePoint(1.0, 2.0)) AS y;次の結果が返されます。
+---+
| y |
+---+
| 2 |
+---+ST_YMax
指定された Geometry オブジェクトのバウンディングボックスの最大 Y 座標を返します。
構文
BigDecimal ST_YMax(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトは、Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon、または GeometryCollection オブジェクトのいずれかです。
Geometry オブジェクトが EMPTY の場合、この関数は -1 を返します。
例
SELECT ST_YMax(ST_GeomFromText('LINESTRING(1 3,5 6)')) AS ymax;次の結果が返されます。
+------+
| ymax |
+------+
| 6 |
+------+ST_YMin
指定された Geometry オブジェクトのバウンディングボックスの最小 Y 座標を返します。
構文
BigDecimal ST_YMin(geometry g)パラメーターの説明
パラメーター | 説明 |
g | 指定された Geometry オブジェクト。 |
Geometry オブジェクトは、Point、LineString、Polygon、MultiPoint、MultiLineString、MultiPolygon、または GeometryCollection オブジェクトのいずれかです。
Geometry オブジェクトが EMPTY の場合、この関数は 0 を返します。
例
SELECT ST_YMin(ST_GeomFromText('LINESTRING(1 3,5 6)')) AS ymin;次の結果が返されます。
+------+
| ymin |
+------+
| 3 |
+------+