SQL 2008 Spatial Data Type Geometry
Hallo zusammen,
Mit SQL Server 2008 wurde ein neuer Datentyp eingeführt um flache geometrische Formen zu beschreiben.
/*Point*/
DECLARE @g Geometry
SET @g = Geometry::STGeomFromText('Point(5 5 )',0)
SELECT @g
SELECT @g.ToString()
Im SQL Server Management Sudio erscheint ein "Spacial Result" tab.
Und so sieht dann das Resultat aus.
/*Line*/
DECLARE @g Geometry
SET @g = Geometry::STGeomFromText('LINESTRING(0 0, 5 0, 10 10)',0)
SELECT @g
/*Polygon*/
DECLARE @g geometry
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 10, 10 10, 10 0, 0 0))', 0);
SELECT @g
SELECT @g.STCentroid().ToString()
/*Multiple Polygons*/
DECLARE @g geometry
SET @g = geometry::STGeomFromText('POLYGON((0 0, 0 10, 10 10, 10 0, 0 0), (1 1, 4 5, 4 1, 1 1))', 0);
SELECT @g
/*Interacting & Polygon Math*/
DECLARE @g geometry
DECLARE @h geometry
SET @g = geometry::STGeomFromText('POLYGON((10 10, 40 10, 40 40, 10 40, 10 10))',0)
SET @h = geometry::STGeomFromText('POLYGON((30 30, 50 30, 50 50, 30 50, 30 30))',0)
SELECT @g.STDifference(@h)
SELECT @g.STIntersection(@h)
SELECT @g.STSymDifference(@h)
SELECT @g.STUnion(@h)
STDifference
STIntersection
STSymDifference
STUnion
So, das waren erst mal ein paar Grundlagen zum SQLGeometry Datentyp.