2016-06-01 9 views
-2

So überprüfen Sie den Längengrad in SQL Server Auto in Zone oder nicht bitte helfen Sie mir.Google Zone überprüfen SQL-Abfrageebene SQL Server

Zone Länge unter

1 12426 1100 32.231389663 72.246093750 31.765537409 71.455078125 rectangle 

Auto Länge Breite

12426 31.966143862 71.806640625 

enter image description here

+1

Ist das nicht nur ein x1> = x> = x2 && y1> = y> = y2 überprüfen? –

+1

Hier ist ein großartiger Ort um anzufangen. http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/ –

Antwort

0
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 
1

Wenn ich Ihre Frage richtig folgendes verstehen sollte für Sie arbeiten. Ich würde Sie brauchen, um Beispielskript für Daten und gewünschte Ergebnisse bereitzustellen, um 100% sicher zu sein.

Select *, -- Returns values for alias F if a match is found or else nulls for F. 
     Case When F.ID Is Null 
      Then 'Not in a zone' 
      Else 'In a zone' 
      End InZoneIndicator 
    From checkGeoFence C 
    Left Join tblgeofencing F On C.Lat Between F.MinLatitude And F.MaxLatitude 
         And C.Long Between F.MinLongitude And F.MaxLongitude 
+0

danke viel lieber ich werde überprüfen und antworte :) –

+0

diese Abfrage nicht running; 9 –

+0

seine Rückkehr jedes Datenauto in der Zone –

Verwandte Themen