全部產品
Search
文件中心

Lindorm:訪問函數

更新時間:Oct 19, 2024

本文介紹時空函數中的訪問函數。

引擎與版本

訪問函數僅適用於寬表引擎。無版本要求。

函數列表

Lindorm GanosBase支援的訪問函數如下表所示。

函數

說明

ST_Centroid

返回指定Geometry對象的幾何中心。

ST_EndPoint

指定LineString對象的最後一個點。

ST_NPoints

返回指定Geometry對象中頂點的個數。

ST_StartPoint

返回指定LineString類型的起點。

ST_X

返回指定Point類型的X座標值。

ST_XMax

返回指定Geometry對象邊界框X座標的最大值。

ST_XMin

返回指定Geometry對象邊界框X座標的最小值。

ST_Y

返回指定Point類型的Y座標值。

ST_YMax

返回指定Geometry對象邊界框Y座標的最大值。

ST_YMin

返回指定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座標值。

文法

double 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座標的最大值。

文法

double 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座標的最小值。

文法

double 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座標值。

文法

double 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座標的最大值。

文法

double 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座標的最小值。

文法

double 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    |
+------+