ST_CoordDim

Définition

ST_CoordDim renvoie les dimensions des valeurs de coordonnées d'une colonne ST_Geometry.

Syntaxe

sde.st_coorddim (g1 sde.st_geometry)

Type de retour

Entier

Exemple

La table coordim_test est créée avec les colonnes geotype et g1. La colonne geotype stocke le nom de la sous-classe de géométrie stockée dans la colonne g1 de type ST_Geometry.

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)
);

L'instruction SELECT répertorie le nom de la sous-classe stocké dans la colonne geotype avec la dimension des coordonnées de cette géométrie. Toutes les entités créées contenaient seulement des coordonnées x,y, si bien que ST_CoordDim renvoie 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

7/10/2012