Example: AggGeomIntersection - Advanced SQL Engine - Teradata Database

Geospatial Data Types

Product
Advanced SQL Engine
Teradata Database
Release Number
17.05
17.00
Published
June 2020
Language
English (United States)
Last Update
2021-01-23
dita:mapPath
vci1556127188517.ditamap
dita:ditavalPath
lze1555437562152.ditaval
dita:id
B035-1181
lifecycle
previous
Product Category
Teradata Vantage™

These examples use the AggGeomIntersection function to get the spatial intersection of the shape column values in rows of the sample_shapes table:

CREATE TABLE sample_shapes(skey INTEGER, shape ST_Geometry);

INSERT INTO sample_shapes(1001,'MultiPoint((10 20 30),(40 50 60))');
INSERT INTO sample_shapes(1002,'Point(10 20 30)');
INSERT INTO sample_shapes(1003, 
 'Polygon((100 100 100, 100 500 500, 500 500 500, 500 100 500, 100 100 100))');
INSERT INTO sample_shapes(1004, 'Linestring (100 500 500, 500 100 500)');
INSERT INTO sample_shapes(1005, 
 'Polygon((500 500 500, 500 1000 1000, 1000 1000 1000, 1000 500 1000, 500 500 500))');
INSERT INTO sample_shapes(1006, 'Polygon((0 0 0, 0 50 50, 50 50 50, 50 0 50, 0 0 0))');
INSERT INTO sample_shapes(1007, 
 'Polygon((50 50 50, 50 100 100, 100 100 100, 100 50 100, 50 50 50))');

select AggGeomIntersection(shape) from sample_shapes;

AggGeomIntersection(shape)
---------------------------------------------------------------
GEOMETRYCOLLECTION EMPTY

select AggGeomIntersection(shape) from sample_shapes where skey in (1001, 1002);

AggGeomIntersection(shape)
---------------------------------------------------------------
POINT (10 20 30)

select AggGeomIntersection(shape) from sample_shapes where skey in (1003, 1004);

AggGeomIntersection(shape)
---------------------------------------------------------------
LINESTRING (100 500 500,500 100 500)

select AggGeomIntersection(shape) from sample_shapes where skey in (1003,1005);

AggGeomIntersection(shape)
---------------------------------------------------------------
POINT (500 500 500)

select AggGeomIntersection(shape) from sample_shapes where skey in (1006,1007);

AggGeomIntersection(shape)
---------------------------------------------------------------
POINT (50 50 50)