DECLARE @g geography,
@pIn geography,
@pOut geography
DECLARE @minY varchar(10) = N'32.15701248607007'
DECLARE @maxY varchar(10) = N'69.78515625 '
DECLARE @minX varchar(10) = N'30.921076375384878'
DECLARE @maxX varchar(10) = N'67.78564453125'
SET @g = geography::STPolyFromText('POLYGON((' + @minX + ' ' + @minY + ', ' +
@maxX + ' ' + @minY + ', ' +
@maxX + ' ' + @maxY + ', ' +
@minX + ' ' + @maxY + ', ' +
@minX + ' ' + @minY + '))', 4326);
SET @pIn = geography::STPointFromText('POINT(33.486435450999885 65.69677734375)',4326)
SET @pOut = geography::STPointFromText('POINT( 31.690781806136822 71.0595703125)',4326)
SELECT Poly = @g,
pIn = @pIn,
pOut = @pOut
SELECT DistanceInMetersIn = @g.STDistance(@pIn),
DistanceInMetersOut = @g.STDistance(@pOut),
STIntersectsIn = @g.STIntersects(@pIn),
STIntersectsOut = @g.STIntersects(@pOut)
SELECT STIntersectionIn = @g.STIntersection(@pIn).ToString(),
STIntersectionOut = @g.STIntersection(@pOut).ToString()
GO
Ist das nicht nur ein x1> = x> = x2 && y1> = y> = y2 überprüfen? –
Hier ist ein großartiger Ort um anzufangen. http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/ –