Clause Where impossible sur aleas [Résolu]

Signaler
Messages postés
11
Date d'inscription
samedi 25 novembre 2006
Statut
Membre
Dernière intervention
9 décembre 2008
-
Messages postés
11
Date d'inscription
samedi 25 novembre 2006
Statut
Membre
Dernière intervention
9 décembre 2008
-
Bonjour,

voilà mon souci, j'ai une requete qui fonctionne et qui me sert à trier selon une ville les villes les plus proches.
celle-ci :

[CODE]
@V_Nom nvarchar(max)

AS

SELECT TOP 100 V.V_Nom,
(6366*acos(cos(radians((SELECT V_Latitude FROM [Villes] WHERE V_Nom = @V_Nom)))*cos(radians(V_Latitude))*cos(radians(V_Longitude)-radians((SELECT V_Longitude FROM [Villes] WHERE V_Nom = @V_Nom)))+sin(radians((SELECT V_Latitude FROM [Villes] WHERE V_Nom = @V_Nom)))*sin(radians(V_Latitude))))
 as Proximite
 from Villes V
ORDER BY Proximite ASC
[CODE]

2 réponses

Messages postés
11
Date d'inscription
samedi 25 novembre 2006
Statut
Membre
Dernière intervention
9 décembre 2008

Bon pour ceux que ça intéressera la solution est :

SELECT *
FROM(
SELECT V.V_Nom,
(6366*acos(cos(radians((SELECT V_Latitude FROM[Villes]WHERE V_Nom = @V_Nom)))*cos(radians(V_Latitude))*cos(radians(V_Longitude)-radians((SELECT V_Longitude FROM[Villes]WHERE V_Nom = @V_Nom)))+sin(radians((SELECT V_Latitude FROM[Villes]WHERE V_Nom = @V_Nom)))*sin(radians(V_Latitude))))
AS Proximite
FROM Villes V
ORDERBY Proximite ASC
) t
WHERE Proximite >20
Messages postés
11
Date d'inscription
samedi 25 novembre 2006
Statut
Membre
Dernière intervention
9 décembre 2008

Le soucis est que je vourais faire un :
WHERE Proximite < 20
plutot qu'un
SELECT TOP 100

malheureusement la clause where n'est pas applicable sur un alias.

Auriez vous une idée sur la maniére dont je doit m'y prendre ?

Merci d'avance.

Ps : désolé pour le message coupé en deux!