ST_Dimension
定義
ST_Dimension は、ST_Geometry オブジェクトのディメンション(次元)を返します。
構文
sde.st_dimension (g1 sde.st_geometry)
戻り値のタイプ
Integer
例
geotype および g1 列を持つ dimension_test テーブルを作成します。geotype 列には、g1 ジオメトリ列に格納されるサブクラスの名前を格納します。
Oracle
CREATE TABLE dimension_test (geotype varchar(20), g1 sde.st_geometry); INSERT INTO DIMENSION_TEST VALUES ( 'Point', sde.st_pointfromtext ('point (10.02 20.01)', 0) ); INSERT INTO DIMENSION_TEST VALUES ( 'Linestring', sde.st_linefromtext ('linestring (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0) ); INSERT INTO DIMENSION_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 DIMENSION_TEST VALUES ( 'Multipoint', sde.st_mpointfromtext ('multipoint (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0) ); INSERT INTO DIMENSION_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 DIMENSION_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
CREATE TABLE dimension_test (geotype varchar(20), g1 sde.st_geometry); INSERT INTO dimension_test VALUES ( 'Point', sde.st_point ('point (10.02 20.01)', 0) ); INSERT INTO dimension_test VALUES ( 'Linestring', sde.st_linestring ('linestring (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0) ); INSERT INTO dimension_test VALUES ( 'Polygon', sde.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 dimension_test VALUES ( 'Multipoint', sde.st_multipoint ('multipoint (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0) ); INSERT INTO dimension_test VALUES ( 'Multilinestring', sde.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 dimension_test VALUES ( 'Multipolygon', sde.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) );
SELECT ステートメントは、geotype 列に格納されているサブクラス名と、その geotype のディメンションをリストします。
Oracle
SELECT geotype, sde.st_dimension (g1) Dimension FROM DIMENSION_TEST; GEOTYPE Dimension Point 0 Linestring 1 Polygon 2 Multipoint 0 Multilinestring 1 Multipolygon 2
PostgreSQL
SELECT geotype, sde.st_dimension (g1) AS Dimension FROM dimension_test; geotype dimension Point 0 Linestring 1 Polygon 2 Multipoint 0 Multilinestring 1 Multipolygon 2
7/10/2012