从当前位置找到最近的餐厅?

时间:2017-07-12 05:57:14

标签: c# android sql-server xamarin

我有sql server 2012数据库。我有餐厅大师。在那张桌子里,我正在存放餐厅的纬度和经度。现在我想要做的是当用户搜索他可以使用距离排序的餐馆。所以我得到用户当前位置(lat,long)但与sql查询混淆如何执行计算?

这是我的表

RestLatitude    RestLongitude    Restid
21.1784472        72.9627693        1
21.5724180        72.9648222        2  

我的预期输出根据当前用户位置,想要首先显示最近的餐厅。

1 个答案:

答案 0 :(得分:0)

这个

很容易入侵

首先将纬度和经度转换为数字

然后尝试类似

的内容
select resturent,cast(restLatitude as numeric(18,10))-cast(@userLatitude as numeric(18,10)) as Distance from table order by Distance asc

还添加经度

所以逻辑上最低的值将是最近的地方......

P.S尝试这样的事情,这不是准确的事情,而是思考如何做到这一点