Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Getting from distance for geography coordinates
Message
De
22/11/2011 11:22:40
 
 
À
22/11/2011 11:09:18
Information générale
Forum:
Microsoft SQL Server
Catégorie:
Syntaxe SQL
Versions des environnements
SQL Server:
SQL Server 2008
Application:
Web
Divers
Thread ID:
01529492
Message ID:
01529521
Vues:
40
>Thought I would

While at it, this was the original SQL. If that version would be used, where exactly would be the place to put the required syntax to collect the distance value in the result set:
DECLARE @Latitude Float
DECLARE @Latitude2 Float
DECLARE @Longitude Float
DECLARE @Longitude2 Float
DECLARE @Latitude3 Float
DECLARE @Latitude4 Float
DECLARE @Longitude3 Float
DECLARE @Latitude5 Float
DECLARE @Latitude6 Float
DECLARE @Longitude4 Float
DECLARE @Latitude7 Float
DECLARE @Latitude8 Float
DECLARE @Longitude5 Float

SET @Latitude=47.7795
SET @Latitude2=47.7795
SET @Longitude=-65.7191
SET @Longitude2=-65.7191
SET @Latitude3=47.7795
SET @Latitude4=47.7795
SET @Longitude3=-65.7191
SET @Latitude5=47.7795
SET @Latitude6=47.7795
SET @Longitude4=-65.7191
SET @Latitude7=47.7795
SET @Latitude8=47.7795
SET @Longitude5=-65.7191

SELECT Client.Numero FROM Client
 WHERE (Client.Latitude>=@Latitude-250/111.0 AND Client.Latitude<=@Latitude2+250/111.0) AND
(Client.Longitude>=@Longitude-250/111.0 AND Client.Longitude<=@Longitude2+250/111.0) AND
 3958.75586574*ACOS(
 CASE WHEN SIN(@Latitude3/57.2957795130823)*SIN(Client.Latitude/57.2957795130823)+
           COS(@Latitude4/57.2957795130823)*COS(Client.Latitude/57.2957795130823)*
           COS(Client.Longitude/57.2957795130823-@Longitude3/57.2957795130823)<-1
           THEN -1
      WHEN SIN(@Latitude5/57.2957795130823)*SIN(Client.Latitude/57.2957795130823)+
           COS(@Latitude6/57.2957795130823)*COS(Client.Latitude/57.2957795130823)*
           COS(Client.Longitude/57.2957795130823-@Longitude4/57.2957795130823)>1
           THEN 1
      ELSE SIN(@Latitude7/57.2957795130823)*SIN(Client.Latitude/57.2957795130823)+
           COS(@Latitude8/57.2957795130823)*COS(Client.Latitude/57.2957795130823)*
           COS(Client.Longitude/57.2957795130823-@Longitude5/57.2957795130823)
 END)<=250
Michel Fournier
Level Extreme Inc.
Designer, architect, owner of the Level Extreme Platform
Subscribe to the site at https://www.levelextreme.com/Home/DataEntry?Activator=55&NoStore=303
Subscription benefits https://www.levelextreme.com/Home/ViewPage?Activator=7&ID=52
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform