两个地理坐标(经纬度)地表距离计算公式:

公式解释如下:

  1. Long1,Lat1表示A点经纬度,Long2,Lat2表示B点经纬度;
  2. a=Lat1–Lat2 为两点纬度之差,b=Long1-Long2为两点经度之差;
  3. 6378.137为地球半径,单位为千米;
  4. 计算出来的结果单位为千米,若将半径改为米为单位则计算的结果单位为米;
  5. 计算精度与谷歌地图的距离精度差不多,相差范围在0.2米以下。

引用自https://segmentfault.com/a/1190000013922206

SQL语句实现如下:

-- A点坐标(#{longitude},#{latitude}),B点坐标(longitude,latitude),若有一个坐标值为空则距离默认为100万公里(一个不合理的值)
SELECTIF((ISNULL(#{latitude}) || LENGTH(trim(#{latitude})) < 1 || ISNULL(latitude) || LENGTH(trim(latitude)) < 1), 1000000,ROUND(6378.137 * 2 * ASIN(SQRT(POW(SIN((#{latitude} * PI() / 180 - latitude * PI() / 180) / 2), 2)+ COS(#{latitude} * PI() / 180)* COS(latitude * PI() / 180) * POW(SIN((#{longitude} * PI() / 180 - longitude * PI() / 180) / 2),2))),2)) AS distance,name,photo_url photoUrl,address,telephone,latitude latitude,longitude longitude
FROMstore
WHERE void_flag = 1
ORDER BY distance,code ASC

:)

转载于:https://www.cnblogs.com/gotodsp/p/11057938.html

利用SQL计算两个地理坐标(经纬度)之间的地表距离相关推荐

  1. java gps 距离计算_java计算两个GPS经纬度之间的距离(转)

    /** * Created by yuliang on 2015/3/20. */ public class LocationUtils { private static double EARTH_R ...

  2. Java - 计算两个经纬度之间的直线距离

    Java - 计算两个经纬度之间的直线距离 代码Github地址 https://github.com/FrankZuozuo/JavaSpecial 1.点接口 public interface P ...

  3. 计算3个地理坐标点之间的夹角

    火车地图搞了有半年了,在做火车地图的过程中,遇到了一个问题,就是由于火车站点的地理坐标是直接请求api拿到的,部分api返回的结果可能千差万别.所以我需要一个方法,来在地图显示的过程中,判断出某个站点 ...

  4. 计算两个对应点集之间的旋转矩阵R和转移矩阵T

    这篇文章的相应数学推到在这个地方,有兴趣的可以瞧一瞧计算两个点集合的旋转矩阵R和T的数学推导 假设有两个点集A和B,且这两个点集合的元素数目相同且一一对应.为了寻找这两个点集之间的旋转矩阵 R R R ...

  5. python的datetime举例_Python datetime库计算两个时间点之间的分钟(秒、天)数

    计算两个时间点之间的分钟数 import datetime def minNums(startTime, endTime): '''计算两个时间点之间的分钟数''' # 处理格式,加上秒位 start ...

  6. Java计算两个字符串日期之间的天数差

    Java计算两个字符串日期之间的天数差 调用方法: public static void main(String[] args) throws ParseException {String a = & ...

  7. pandas中使用rolling.corr函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性

    pandas中使用rolling.corr函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations).例如,计算两种商品销售额之间的3个月的滚动相关性 目录

  8. excel中使用CORREL函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性

    excel中使用CORREL函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations).例如,计算两种商品销售额之间的3个月的滚动相关性 目录

  9. R语言使用zoo包中的rollapply函数计算两个时间序列数据列之间的滚动相关性(Rolling correlations)、例如,计算两种商品销售额之间的3个月的滚动相关性

    R语言时间序列数据滚动相关性分析(Rolling correlations).R语言使用zoo包中的rollapply函数计算两个时间序列数据列之间的滚动相关性(Rolling correlation ...

最新文章

  1. 利用Caffe训练模型(solver、deploy、train_val) + python如何使用已训练模型
  2. iOS用什么方式实现对一个对象的KVO?(KVO的本质是什么?)
  3. ContentProvider源码分析(原)
  4. List类系列(一):list中各元素出现的次数
  5. 什么叫返回路径平面上的间隙_苏州平面设计培训:平面设计师工作流程
  6. 【python】入门学习(五)
  7. 树莓派Python 3.x+TensorFlow 1.9.0
  8. --initialize specified but the data directory has files in it. Aborting.
  9. [转]Windows Shell 编程 第五章 【来源:http://blog.csdn.net/wangqiulin123456/article/details/7987939】...
  10. IAR8.4.2安装方法
  11. Windows USB功能驱动开发总结
  12. usb4java android,桌面java应用程序通过USB复制和传输android数据
  13. navigationBar的控制
  14. 2021年中级消防设施操作员(操作与维护),模拟真题及答案
  15. 声波正演c语言程序,二维频率域声波方程正演模拟
  16. 移动IP(计算机网络)
  17. java switch 条件_Java ——if条件语句 switch语句
  18. python分析数据的相关性质_理解数据的性质_Python数据分析实战应用_数据挖掘与分析视频-51CTO学院...
  19. html5之汤姆猫小游戏
  20. cd4069中文资料详解

热门文章

  1. python获取字典的值_python取出字典中的所有值的两种方法
  2. html在线音频播放器实训总结,HTML5音乐列表播放器SMusic开发总结
  3. python双下划线什么意思_python中几个双下划线用法的含义
  4. Codeforces Round #618 (Div. 2)-Non-zero
  5. Deep Reinforcement Learning: Pong from Pixels
  6. mlflow_使用MLflow跟踪进行超参数调整
  7. csdn无人驾驶汽车_无人驾驶汽车100年历史
  8. 自动填充数据新增测试数据_用测试数据填充员工数据库
  9. NIOS II软核处理器
  10. 脱了马甲我也认识你: 聊聊 Android 中类的真实形态