Definición
ST_CoordDim devuelve las dimensiones de los valores de coordenadas para una columna de geometría.
Sintaxis
Oracle y PostgreSQL
sde.st_coorddim (geometry1 sde.st_geometry)
SQLite
st_coorddim (geometry1 geometryblob)
Tipo de devolución
Entero
2 = coordenadas x, y
3 = coordenadas x, y, z o x, y, m
4 = coordenadas x, y, z, m
Ejemplo
En estos ejemplos, la tabla coorddim_test se crea con las columnas geotype y g1. La columna geotype almacena el nombre de la subclase de geometría y la dimensión almacenada en la columna de geometría g1.
La declaración SELECT enumera el nombre de subclase almacenado en la columna geotype con la dimensión de las coordenadas de la geometría.
Oracle
--Create test table.
CREATE TABLE coorddim_test (
geotype varchar(20),
g1 sde.st_geometry
);
--Insert values to the test table.
INSERT INTO COORDDIM_TEST VALUES (
'Point',
sde.st_geometry ('point (60.567222 -140.404)', 4326)
);
INSERT INTO COORDDIM_TEST VALUES (
'Point Z',
sde.st_geometry ('point Z (60.567222 -140.404 5959)', 4326)
);
INSERT INTO COORDDIM_TEST VALUES (
'Point M',
sde.st_geometry ('point M (60.567222 -140.404 5250)', 4326)
);
INSERT INTO COORDDIM_TEST VALUES (
'Point ZM',
sde.st_geometry ('point ZM (60.567222 -140.404 5959 5250)', 4326)
);
--Determine the dimensionality of each feature.
SELECT geotype, sde.st_coorddim (g1) coordinate_dimension
FROM COORDDIM_TEST;
GEOTYPE coordinate_dimension
Point 2
Point Z 3
Point M 3
Point ZM 4
PostgreSQL
--Create test table.
CREATE TABLE coorddim_test (
geotype varchar(20),
g1 sde.st_geometry
);
--Insert values to the test table.
INSERT INTO coorddim_test VALUES (
'Point',
st_point ('point (60.567222 -140.404)', 4326)
);
INSERT INTO coorddim_test VALUES (
'Point Z',
st_point ('point z (60.567222 -140.404 5959)', 4326)
);
INSERT INTO coorddim_test VALUES (
'Point M',
st_point ('point m (60.567222 -140.404 5250)', 4326)
);
INSERT INTO coorddim_test VALUES (
'Point ZM',
st_point ('point zm (60.567222 -140.404 5959 5250)', 4326)
);
--Determine the dimensionality of each feature.
SELECT geotype, st_coorddim (g1)
AS coordinate_dimension
FROM coorddim_test;
geotype coordinate_dimension
Point 2
Point Z 3
Point M 3
Point ZM 4
SQLite
--Create test tables and add geometry columns.
CREATE TABLE coorddim_test (
geotype varchar(20)
);
SELECT AddGeometryColumn(
NULL,
'coorddim_test',
'g1',
4326,
'pointzm',
'xyzm',
'null'
);
CREATE TABLE coorddim_test2 (
geotype varchar(20)
);
SELECT AddGeometryColumn(
NULL,
'coorddim_test2',
'g1',
4326,
'pointz',
'xyz',
'null'
);
CREATE TABLE coorddim_test3 (
geotype varchar(20)
);
SELECT AddGeometryColumn(
NULL,
'coorddim_test3',
'g1',
4326,
'pointm',
'xym',
'null'
);
CREATE TABLE coorddim_test4 (
geotype varchar(20)
);
SELECT AddGeometryColumn(
NULL,
'coorddim_test4',
'g1',
4326,
'point',
'xy',
'null'
);
--Insert values to the test table.
INSERT INTO coorddim_test4 VALUES (
'Point',
st_point ('point (60.567222 -140.404)', 4326)
);
INSERT INTO coorddim_test2 VALUES (
'Point Z',
st_point ('point z (60.567222 -140.404 5959)', 4326)
);
INSERT INTO coorddim_test3 VALUES (
'Point M',
st_point ('point m (60.567222 -140.404 5250)', 4326)
);
INSERT INTO coorddim_test VALUES (
'Point ZM',
st_point ('point zm (60.567222 -140.404 5959 5250)', 4326)
);
--Determine the dimensionality of features in each table.
SELECT geotype, st_coorddim (g1)
AS coordinate_dimension
FROM coorddim_test;
geotype coordinate_dimension
Point ZM 4
SELECT geotype, st_coorddim (g1)
AS coordinate_dimension
FROM coorddim_test2;
geotype coordinate_dimension
Point Z 3
SELECT geotype, st_coorddim (g1)
AS coordinate_dimension
FROM coorddim_test3;
geotype coordinate_dimension
Point M 3
SELECT geotype, st_coorddim (g1)
AS coordinate_dimension
FROM coorddim_test4;
geotype coordinate_dimension
Point 2