Skip to navigation

Attribute Functions

View as Markdown

OcientGeo™ attribute functions return descriptive information on the specified data set.

ST_COORDDIM

Alias for ST_NDIMS or ST_NDIMENSION.

Returns an INTEGER of the coordinate dimension of the specified geography.

Syntax

ST_COORDDIM(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, or POLYGONThe geospatial object used to calculate the dimensions.

Example

SELECT ST_COORDDIM(ST_POLYGON('POLYGON((1 1, 2 1, 2 2, 1 1))'));

Output: 2

ST_DIMENSION

Returns an INTEGER that represents the dimension of the specified geography. This table describes the result values of the ST_DIMENSION function.

ST_DIMENSION Result ValueDimension Type
-1Empty geography value
0POINT
1LINESTRING
2POLYGON

The ST_DIMENSION function always returns 0 for non-empty POINT objects.

For non-empty LINESTRING and POLYGON objects, the ST_DIMENSION function returns the dimension value equal to the greatest dimension represented by their bounding points. For example, a LINESTRING or POLYGON object that contains only a single point returns 0. Similarly, a POLYGON object can return 1 if it contains insufficient points to represent a closed polygon.

Syntax

ST_DIMENSION(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, or POLYGONThe geospatial object used to calculate the dimensions.

Examples

In this example, the function evaluates a LINESTRING with an empty POINT value.

SELECT ST_DIMENSION(ST_LINESTRING('POINT EMPTY'));

Output: -1

In this example, the function evaluates a LINESTRING with a single POINT value.

SELECT ST_DIMENSION(ST_LINESTRING('ST_POINT(0 0)'));

Output: 0

This example evaluates an empty LINESTRING.

SELECT ST_DIMENSION(ST_LINESTRING('LINESTRING EMPTY'));

Output: -1

In this example, the function again evaluates a LINESTRING with a single POINT value.

SELECT ST_DIMENSION(ST_LINESTRING('LINESTRING(0 0)'));

Output: 0

In this example, the function evaluates a LINESTRING with multiple POINT values.

SELECT ST_DIMENSION(ST_LINESTRING('LINESTRING(0 0, 1 1)'));

Output: 1

This example evaluates an empty POLYGON.

SELECT ST_DIMENSION(ST_POLYGON('POLYGON EMPTY'));

Output: -1

This example evaluates a POLYGON with a single POINT.

SELECT ST_DIMENSION(ST_POLYGON('POLYGON((1 1))'));

Output: 0

This example evaluates a POLYGON with two POINT values.

SELECT ST_DIMENSION(ST_POLYGON('POLYGON((0 0, 1 1))'));

Output: 1

This example evaluates a POLYGON with multiple POINT values, enough to close the POLYGON.

SELECT ST_DIMENSION(ST_POLYGON('POLYGON((0 0, 1 0, 1 1, 0 0))'));

Output: 2

ST_GEOMETRYTYPE

Returns a STRING that represents the geometry of the input geospatial value. Supported values are ST_POINT, ST_LINESTRING, and ST_POLYGON. This function enforces the same strict dimension types as the ST_DIMENSION function. If geo is NULL, then the function returns NULL.

Syntax

ST_GEOMETRYTYPE(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONA geospatial value to be identified by its dimension type.

Example

SELECT ST_GEOMETRYTYPE(ST_POINT(1, 2));

Output: ST_POINT

ST_ISEMPTY

Returns TRUE if the specified geography value is empty, such as 'POLYGON EMPTY'. A NULL input value returns NULL.

Syntax

ST_ISEMPTY(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONA geospatial value to be examined if it is empty.

Example

SELECT ST_ISEMPTY(ST_POLYGON('POLYGON EMPTY'));

Output: TRUE

ST_MEMSIZE

Returns an INTEGER representing the number of bytes in memory required to store the specified geography.

Syntax

ST_MEMSIZE(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONA geospatial value to be measured by its data memory.

Example

SELECT ST_MEMSIZE(ST_POINT(1,1));

Output: 16

ST_NDIMS or ST_NDIMENSION

Alias for ST_COORDDIM.

ST_NPOINTS or ST_NUMPOINTS

Returns an INTEGER representing the number of POINT values in a specified geography.

If the specified value is a POLYGON, this function counts the number of POINT values in both the exterior and any holes.

Syntax

ST_NPOINTS(geo)
ST_NUMPOINTS(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONA geospatial value to be examined for its count of POINT values.

Example

SELECT ST_NPOINTS(
ST_POLYGON(
'POLYGON((1 2, 1 3, 1 2))'));

Output: 3

ST_SRID

Returns the EPSG code of the spatial reference identifier (SRID) of the input geography. All Ocient® geographies are of type GCS WGS 84, which is identified by the value 4326. There is no way to set a different SRID.

Syntax

ST_SRID(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONA geospatial value to be analyzed for its EPSG code.

Example

SELECT ST_SRID(ST_MAKEPOINT(1.1, 3.11));

Output: 4326

ST_X

Returns the x value, or longitude, of the specified POINT. The returned value is a DOUBLE type.

Syntax

ST_X(point)
ArgumentData TypeDescription
pointPOINTA geospatial point to be analyzed for its x value, the longitude.

Example

SELECT ST_X(ST_POINT(3, 5));

Output: 3

ST_XMAX

Returns the maximum x value of the specified geography. The returned value is a DOUBLE type.

Syntax

ST_XMAX(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONOne or more geospatial points to be analyzed for the maximum x value.

Example

In this example, the ST_XMAX function returns 2 because it is the largest x value of the specified points.

SELECT ST_XMAX(
ST_POLYGON(ST_LINESTRING('LINESTRING(2 5, 1 2, 1 4, 0 3)')));

Output: 2

ST_XMIN

Returns the minimum x value of the specified geography.

Syntax

ST_XMIN(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONOne or more geospatial points to be analyzed for the minimum x value.

Example

In this example, the ST_XMIN function returns 0 because it is the smallest x value of the specified points.

SELECT ST_XMIN(
ST_POLYGON(ST_LINESTRING('LINESTRING(2 5, 1 2, 1 4, 0 3)')));

Output: 0

ST_Y

Returns the y value, or latitude, of the specified POINT. The returned value is a DOUBLE type.

Syntax

ST_Y(point)
ArgumentData TypeDescription
pointPOINTA geospatial point to be analyzed for its y value, the latitude.

Example

SELECT ST_Y(ST_POINT(3, 5));

Output: 5

ST_YMAX

Returns the maximum y value of the specified geography.

Syntax

ST_YMAX(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONOne or more geospatial points to be analyzed for the maximum y value.

Example

In this example, the ST_YMAX function returns 5 because it is the largest y value of the specified points.

SELECT ST_YMAX(
ST_POLYGON(ST_LINESTRING('LINESTRING(2 5, 1 2, 1 4, 0 3)')));

Output: 5

ST_YMIN

Returns the minimum y value of the specified geography.

Syntax

ST_YMIN(geo)
ArgumentData TypeDescription
geoPOINT, LINESTRING, POLYGONOne or more geospatial points to be analyzed for the minimum y value.

Example

In this example, the ST_YMIN function returns 2 because it is the smallest y value of the specified points.

SELECT ST_YMIN(
ST_POLYGON(ST_LINESTRING('LINESTRING(2 5, 1 2, 1 4, 0 3)')));

Output: 2

Related Links

Geospatial Data Types

Linestring Constructors

Point Constructors

Polygon Constructors