ST_CoordDim

Definition

ST_CoordDim returns the dimensions of coordinate values for an ST_Geometry column.

Syntax

sde.st_coorddim (g1 sde.st_geometry)

Return type

Integer

Example

The coorddim_test table is created with the columns geotype and g1. The geotype column stores the name of the geometry subclass stored in the g1 ST_Geometry column.

CREATE TABLE coorddim_test (geotype varchar(20), g1 sde.st_geometry);

Oracle

INSERT INTO COORDDIM_TEST VALUES (
'Point',
sde.st_pointfromtext ('point (10.02 20.01)', 0)
);

INSERT INTO COORDDIM_TEST VALUES (
'LineString',
sde.st_linefromtext ('linestring (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0)
);

INSERT INTO COORDDIM_TEST VALUES (
'Polygon',
sde.st_polyfromtext ('polygon ((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01))', 0)
);

INSERT INTO COORDDIM_TEST VALUES (
'MultiPoint',
sde.st_mpointfromtext ('multipoint (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0)
);

INSERT INTO COORDDIM_TEST VALUES (
'MultiLineString',
sde.st_mlinefromtext ('multilinestring ((10.02 20.01, 10.32 23.98, 11.92 25.64), (9.55 23.75, 15.36 30.11))', 0)
);

INSERT INTO COORDDIM_TEST VALUES (
'MultiPolygon',
sde.st_mpolyfromtext ('multipolygon (((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01),(51.71 21.73,73.36 27.04,71.52 32.87,52.43 31.90,51.71 21.73)))', 0)
);

PostgreSQL

INSERT INTO coorddim_test VALUES (
'Point',
st_point ('point (10.02 20.01)', 0)
);

INSERT INTO coorddim_test VALUES (
'LineString',
st_linestring ('linestring (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0)
);

INSERT INTO coorddim_test VALUES (
'Polygon',
st_polygon ('polygon ((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01))', 0)
);

INSERT INTO coorddim_test VALUES (
'MultiPoint',
st_multipoint ('multipoint (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0)
);

INSERT INTO coorddim_test VALUES (
'MultiLineString',
st_multilinestring ('multilinestring ((10.02 20.01, 10.32 23.98, 11.92 25.64), (9.55 23.75, 15.36 30.11))', 0)
);

INSERT INTO coorddim_test VALUES (
'MultiPolygon',
st_multipolygon ('multipolygon (((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01),(51.71 21.73,73.36 27.04,71.52 32.87,52.43 31.90,51.71 21.73)))', 0)
);

The SELECT statement lists the subclass name stored in the geotype column with the dimension of the coordinates of that geometry. All of the features created contained only x,y coordinates, so ST_CoordDim returns 2.

Oracle

SELECT geotype, sde.st_coorddim (g1) coordinate_dimension
FROM COORDDIM_TEST;

GEOTYPE               coordinate_dimension

Point                                2
LineString                           2
Polygon                              2
MultiPoint                           2
MultiLineString                      2
MultiPolygon                         2

PostgreSQL

SELECT geotype, st_coorddim (g1) 
AS coordinate_dimension
FROM coorddim_test;

geotype              coordinate_dimension

Point                                2
LineString                           2
Polygon                              2
MultiPoint                           2
MultiLineString                      2
MultiPolygon                         2

3/6/2012