Geospatial nested joins can now be performed with one side of the join being an expression that results in ST_Geometry value, and the other side being an ST_Geometry table column with a geospatial index. For example, you can now use the following two forms of joins (where GeoColExpression contains a column from Table2):
SELECT a, b FROM Table1, Table2 WHERE Table1.GeoCol.SupportedGeoMethod(GeoColExpression)=1or
SELECT a, b FROM Table1, Table2 WHERE GeoColExpression.SupportedGeoMethod(Table1.GeoCol)=1
Geospatial single-table predicates can now accept a geospatial column on either side of the predicate method. For example, you can use either of these forms:
SELECT a, b FROM TableName WHERE TableName.GeoCol.SupportedGeoMethod(GeospatialLiteralExpression)=1or
SELECT a, b FROM TableName WHERE GeospatialLiteralExpression.SupportedGeoMethod(TableName.GeoCol)=1
Benefits
- More flexibility in creating geospatial joins and predicates
- Better statistics collection on geospatial data and better performance for geospatial operations
Considerations
- At least one side of a geospatial join must be an ST_Geometry column having a geospatial index.
Additional Information
For more information on geospatial joins and predicates, see Teradata Geospatial Types, B035-1181.