mysql 下 计算 两点 经纬度 之间的距离
2015-11-09 10:45
393 查看
公式如下,单位米:
第一点经纬度:lng1 lat1
第二点经纬度:lng2 lat2
round(6378.138*2*asin(sqrt(pow(sin( (lat1*pi()/180-lat2*pi()/180)/2),2)+cos(lat1*pi()/180)*cos(lat2*pi()/180)* pow(sin( (lng1*pi()/180-lng2*pi()/180)/2),2)))*1000)
例如:
SELECT store_id,lng,lat, ROUND(6378.138*2*ASIN(SQRT(POW(SIN((22.299439*PI()/180-lat*PI()/180)/2),2)+COS(22.299439*PI()/180)*COS(lat*PI()/180)*POW(SIN((114.173881*PI()/180-lng*PI()/180)/2),2)))*1000) AS juli
FROM store_info
ORDER BY juli DESC
LIMIT 316
参考资料如下:
http://blog.sina.com.cn/s/blog_8da982ac0101jeh5.html
第一点经纬度:lng1 lat1
第二点经纬度:lng2 lat2
round(6378.138*2*asin(sqrt(pow(sin( (lat1*pi()/180-lat2*pi()/180)/2),2)+cos(lat1*pi()/180)*cos(lat2*pi()/180)* pow(sin( (lng1*pi()/180-lng2*pi()/180)/2),2)))*1000)
例如:
SELECT store_id,lng,lat, ROUND(6378.138*2*ASIN(SQRT(POW(SIN((22.299439*PI()/180-lat*PI()/180)/2),2)+COS(22.299439*PI()/180)*COS(lat*PI()/180)*POW(SIN((114.173881*PI()/180-lng*PI()/180)/2),2)))*1000) AS juli
FROM store_info
ORDER BY juli DESC
LIMIT 316
参考资料如下:
http://blog.sina.com.cn/s/blog_8da982ac0101jeh5.html
相关文章推荐
- MySQL中distinct与group by之间的性能进行比较
- MySQL操作笔记(1)
- windows7下用命令操作mysql
- mysqldump的使用
- 燕十八mysql笔记
- MySQL查看表和清空表的常用命令总结
- 关于们MySQL 插入空值" '' " 与null
- mysql varchar类型使用心得
- 查看文章 mysql:表注释和字段注释
- mysql中文乱码
- MySQL日期时间函数大全
- MySQL的五种日期和时间类型
- mysql - join two derived tables
- ubuntu mysql5.7源码安装
- mysql 乐观锁和悲观锁实现
- Mysql 根据一个表数据更新另外一个表
- MySQL查看表和清空表的常用命令总结
- MySQL中distinct与group by之间的性能进行比较
- MySQL中distinct和count(*)的使用方法比较
- Mysql命令大全(完整版)