mysql中两点之间距离的计算
需求背景
最近做电商项目,要求跟根据用户当前位置显示距离用户当前位置十五公里内的商品。 用户当前位置由移动端(Android,ios)传递到后台,商品表里面保存当前商品所在店铺的经纬度。也就是已知两个点的经纬度信息求两点间的距离。 对于两点之间的距离,在mysql中可以根据两点的经纬度进行计算。
SQL实现:
SELECTround(6378.138 * 2 * asin(sqrt(pow(sin((A点的纬度 * pi() / 180 - B点的纬度 * pi() / 180) / 2),2) + cos(A点的纬度 * pi() / 180) * cos(B点的纬度 * pi() / 180) * pow(sin((A点的经度 * pi() / 180 - B点的经度 * pi() / 180) / 2),2))) * 1000)
具体操作
现在已知两点坐标为:天府广场(104.066546,30.657462) 天府公园(104.072704,30.431714),将这两点的坐标填入上面的sql为:
select round(6378.138*2*asin(sqrt(pow(sin((
30.657462 #A点的纬度
*pi()/180-
30.431714 #B点的纬度
*pi()/180)/2),2)+cos(
30.657462 #A点的纬度
*pi()/180)
*cos(
30.431714 #B点的纬度
*pi()/180)* pow(sin((
104.0665460 #A点的经度
*pi()/180-
104.072704 #B点的经度
*pi()/180)/2),2)))*1000)
执行结果为:
这里的单位是米,可以看出这里两点的距离大概为25公里,跟用高德地图搜索的距离相差不大。
关于测试的时候如何找到指定位置的经纬度,可以利用高德地图获取,具体链接:https://lbs.amap.com/api/javascript-api/example/map/click-to-get-lnglat
mysql中两点之间距离的计算相关推荐
- 小程序计算两点之间距离
计算两点之间距离 一. 在小程序中获取两点之间的距离 要首先明确哪俩点的位置 在页面的js中先写出 经纬度 以此来计算 这里是计算当前位置和目的地的位置 二 .通过函数来计算俩点之间的距离 需要写在j ...
- js计算两点之间距离
//两点之间距离 m function getDistance( lat1, lng1, lat2, lng2){var radLat1 = lat1*Math.PI / 180.0;var radL ...
- 求两点之间距离 C++
求两点之间距离(20 分) 定义一个Point类,有两个数据成员:x和y, 分别代表x坐标和y坐标,并有若干成员函数. 定义一个函数Distance(), 用于求两点之间的距离. 输入格式: 输入有两 ...
- 无向图中两点之间的距离_自然语言处理中距离计算总结
距离计算在自然语言处理中得到广泛使用,不同距离计算方式应用与不同的环境,其中也产生了很多不同的效果. 1 余弦距离 余弦夹角也可以叫余弦相似度.集合中夹角可以用来衡量两个向量方向的差异,机器学习中借用 ...
- 微信小程序通过经纬度计算两点之间距离
小程序中通过经纬度计算两点之间的距离km 1.拾取两地经纬度坐标 . data:{//当前定位位置latitude: null,longitude: null,// 目的地坐标latitude2: 1 ...
- php 计算两点时间距离,PHP计算地球上两点之间的距离(示例详解)
给定经度和纬度,求地球上两点之间的距离.首先我们需要了解该问题的解决思路,然后再用PHP代码来实现计算. 此问题可以用半正矢(haversine)公式求解: 大圆距离或正交距离是球面(或地球表面)上两 ...
- 无向图中两点之间的距离_九上数学:二次函数图像,一动点到两定点距离和最小...
题目: 这是九年级上册数学配套练习册<人教金学典>上的一道选择题,学生普遍反映较难. 析解: 本题求△PMF周长的最小值,而两个定点之距FM已为定值,故实质上是求PF+PM最小值.由于已知 ...
- 设计平面坐标点类,计算两点之间距离、到原点距离、关于坐标轴和原点的对称点等
#include<iostream> #include<cstdlib> #include<cmath> using namespace std; class CP ...
- VTK-三维坐标系计算两点之间距离
获取两个点坐标p1(x,y,z) p2(x,y,z) 计算这两个点之间距离 ,代码如下 void MainWindow::on_CalcBtn_clicked() {double p1[3], p2[ ...
- [转]最速下降曲线:重力场中两点之间曲线更快
数学之美:两点之间最快的路径 掉节操的星期一又来了,所以呢一起来观赏一下数学之骚美. 这事儿和17世纪的一道谜题有关,直到后来微积分被建立起来以后才得正解.虽然问题不难,但结果惊艳. 我先来问一个比较 ...
最新文章
- Linux上用户执行命令记录
- java mina多线程_mina2中的线程池
- ❤️你还在用visio画图吗?已经落伍啦!快来试试轻量级绘图神器draw.io吧!❤️
- 使用EasyExcel导入导出Excel报表-JAVA解析Excel工具
- 9月24日直播丨数据库大咖讲坛(第7期):数据库内核技术与行业应用
- qt QMessageBox 中文乱码的问题
- 了解Linux操作系统的引导过程
- [转]linux signal
- vue-cli项目中使用Mint-ui中的mt-cell、mt-popup、mt-picker实现仿淘宝添加收货地址页面(地址三级联动 附全国省市区json文档)
- python好玩的代码-我珍藏的一些好的Python代码,技巧
- CAS配置REST请求方式
- 写作专用各种表情和符号,使你的文章更加美观有趣!❤️❤️❤️
- 黑灰产眼中的NFT:平台嗷嗷待宰,用户送钱上门
- 蒟蒻打CF#729div 2
- APP限制录屏怎么办?如何绕过APP录屏限制和截图限制-支持安卓和IOS
- CGB2202API基础第1天
- 阿里 java 面试题 p6_「独家」五面阿里P6:Java开发面试题及答案
- Norgen AAV提取剂盒说明书(含特色)
- cannot find method ‘value‘
- 聊天机器人 AIML文件 srai标签解释(五)