ST_Difference verwendet zwei Geometrieobjekte und gibt ein Geometrieobjekt zurück, das die Differenz der beiden Eingabeobjekte darstellt.
Syntax
db2gse.ST_Difference(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
Rückgabetyp
db2gse.ST_Geometry
Beispiele
Der Stadtplaner muß die Gesamtfläche der Grundstücke in der Stadt kennen, auf denen kein Gebäude steht. Das heißt, der Stadtplaner braucht die Summe der Fläche nach Abzug der bebauten Fläche.
CREATE TABLE BUILDINGFOOTPRINTS (building_id integer, lot_id integer, footprint db2gse.ST_MultiPolygon); CREATE TABLE LOTS ( lot_id integer, lot db2gse.ST_MultiPolygon);
Der Stadtplaner erstellt eine Gleichsetzungsverknüpfung zwischen den Tabellen BUILDINGFOOTPRINTS und LOTS über die lot_id. Anschließend verwendet er die Flächensumme der Differenzen zwischen Grundstücke und den Gebäudegrundflächen.
SELECT SUM(db2gse.ST_Area(db2gse.ST_Difference(lot,footprint))) FROM BUILDINGFOOTPRINTS bf, LOTS WHERE bf.lot_id = LOTS.lot_id;