ST_Boundary toma um objeto de geometria e retorna seu limite combinado como um objeto de geometria.
Sintaxe
db2gse.ST_Boundary(g db2gse.ST_Geometry)
Tipo de retorno
db2gse.ST_Geometry
Exemplos
No seguinte fragmento de código, é criada uma tabela chamada BOUNDARY_TEST. BOUNDARY_TEST tem duas colunas: GEOTYPE, que está definida como varchar e G1, definida como geometria de superclasse. As instruções INSERT que se seguem inserem cada uma das geometrias de subclasse. A função ST_Boundary recupera o limite de cada subclasse que está armazenada na coluna de geometria G1. Observe que a dimensão da geometria resultante é sempre uma menor que a geometria de entrada. Os pontos e multipontos sempre resultam num limite que é uma geometria vazia, dimensão 1. As cadeias de linhas e cadeias de linhas múltiplas retornam um limite multiponto, dimensão 0. Um polígono ou multipolígono sempre retorna um limite de cadeia de linhas múltiplas, dimensão 1.
CREATE TABLE BOUNDARY_TEST (GEOTYPE varchar(20), G1 db2gse.ST_Geometry) INSERT INTO BOUNDARY_TEST VALUES('Point', db2gse.ST_PointFromText('point (10.02 20.01)', db2gse.coordref()..srid(0))) INSERT INTO BOUNDARY_TEST VALUES ('Linestring', db2gse.ST_LineFromText('linestring (10.02 20.01,10.32 23.98, 11.92 25.64)', db2gse.coordref()..srid(0))) INSERT INTO BOUNDARY_TEST VALUES('Polygon', db2gse.ST_PolyFromText('polygon ((10.02 20.01,11.92 35.64,25.02 34.15, 19.15 33.94, 10.02 20.01))', db2gse.coordref()..srid(0))) INSERT INTO BOUNDARY_TEST VALUES('Multipoint', db2gse.ST_MPointFromText('multipoint (10.02 20.01,10.32 23.98, 11.92 25.64)', db2gse.coordref()..srid(0))) INSERT INTO BOUNDARY_TEST VALUES('Multilinestring', db2gse.ST_MLineFromText('multilinestring ((10.02 20.01,10.32 23.98, 11.92 25.64), (9.55 23.75,15.36 30.11))', db2gse.coordref()..srid(0))) INSERT INTO BOUNDARY_TEST VALUES('Multipolygon', db2gse.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)))', db2gse.coordref()..srid(0))) SELECT GEOTYPE, CAST(db2gse.ST_AsText(db2gse.ST_Boundary (G1)) as varchar(280)) "The boundary" FROM BOUNDARY_TEST GEOTYPE The boundary -------------------- ---------------------------------------------------------- Point POINT EMPTY Linestring MULTIPOINT ( 10.02000000 20.01000000, 11.92000000 25.64000000) Polygon MULTILINESTRING (( 10.02000000 20.01000000, 19.15000000 33.94000000, 25.02000000 34.15000000, 11.92000000 35.64000000, 10.02000000 20.01000000)) Multipoint POINT EMPTY Multilinestring MULTIPOINT ( 9.55000000 23.75000000, 10.02000000 20.01000000, 11.92000000 25.64000000, 15.36000000 30.11000000) Multipolygon MULTILINESTRING (( 51.71000000 21.73000000, 73.36000000 27.04000000, 71.52000000 32.87000000, 52.43000000 31.90000000, 51.71000000 21.73000000),( 10.02000000 20.01000000, 19.15000000 33.94000000, 25.02000000 34.15000000, 11.92000000 35.64000000, 10.02000000 20.01000000)) 6 record(s) selected.