Я пытаюсь заставить работать запрос, который возвращает список locId из базы данных при подаче long и lat.
Вот sql:
например: lat = "-37.8333300": lon = "145.000000": radius = (5 * 0.621371192) ^ 2
SELECT locId,longitude,latitude FROM tbliplocations WHERE (69.1*([longitude]- "&lon&") * cos("&lat&"/57.3))^2 + (69.1*([latitude]- "&lat&"))^2 < "&radius
Вот ошибка, которую я получаю:
Типы данных float и int несовместимы в операторе '^'.
Я не уверен в обходном пути, может кто-нибудь указать мне правильное направление?
Ответ:
Использование SQL Server 2008 R2
SELECT city FROM tbliplocationsnew WHERE POWER((69.1*([longitude]- "&lon&") * cos("&lat&"/57.3)),2) + POWER((69.1*([latitude]- "&lat&")),2) < "&radius