点餐系统(五)——获取附近餐馆

  在系统中,搜索附近餐馆的时候,要根据当前的经纬度去获取附近指定距离的餐馆信息。在这个需求中就必须要根据经纬度去计算餐馆和当前经纬度的距离。之前的做法是因为用sybase数据库,所以计算距离都是获取完数据之后进行两点之间的计算。但是目前已经弃用sybase数据库,所以我想着在sql里面之间作为条件去查询符合条件的餐馆。


  在sql中的语句如下
    
select * from mer where sqrt(  
    (  
     ((113.60189578775-mer_gps_longitude)*PI()*12656*cos(((24.80864699442+mer_gps_latitude)/2)*PI()/180)/180)  
     *  
     ((113.60189578775-mer_gps_longitude)*PI()*12656*cos (((24.80864699442+mer_gps_latitude)/2)*PI()/180)/180)  
    )  
    +  
    (  
     ((24.80864699442-mer_gps_latitude)*PI()*12656/180)  
     *  
     ((24.80864699442-mer_gps_latitude)*PI()*12656/180)  
    )  
)<5 


 查询出来的数据就是小于5km距离的餐馆

    

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值