当前位置: 首页 > news >正文

数据库sql--关于计算方圆5公里点位编写

当我们计算两个地球上任意两点之间的距离时,可以使用Haversine公式。

下面是每个函数和数值的详细解释:

  • RADIANS(target_latitude):将目标纬度值转换为弧度制。这是因为Haversine公式以弧度为单位计算角度。
  • RADIANS(latitude):将数据表中的纬度值转换为弧度制。
  • RADIANS(target_longitude):将目标经度值转换为弧度制。
  • RADIANS(longitude):将数据表中的经度值转换为弧度制。
  • SIN((RADIANS(target_latitude) - RADIANS(latitude)) / 2):计算目标纬度与数据表中纬度之间的差值的一半的正弦值。
  • SIN((RADIANS(target_longitude) - RADIANS(longitude)) / 2):计算目标经度与数据表中经度之间的差值的一半的正弦值。
  • COS(RADIANS(target_latitude)):计算目标纬度的余弦值。
  • POWER(SIN((RADIANS(target_latitude) - RADIANS(latitude)) / 2), 2) + COS(RADIANS(target_latitude)) * COS(RADIANS(latitude)) * POWER(SIN((RADIANS(target_longitude) - RADIANS(longitude)) / 2), 2):计算Haversine公式中的公式部分,表示两点之间的角距离。
  • ASIN(SQRT(…)):计算上述公式部分的平方根的反正弦值,得到弧度距离。
  • 6371 * 2 * ASIN(…):将弧度距离乘以地球的平均半径(6371公里),得到实际的地表距离。
  • <= 5:使用此条件筛选出距离小于或等于5公里的数据。

下面是示例

假设你的数据表名为locations,经度字段名为longitude,纬度字段名为latitude,要计算的经纬度点为(target_longitude, target_latitude),可以使用以下SQL查询

SELECT *
FROM locations
WHERE (6371 * 2 * ASIN(SQRT(POWER(SIN((RADIANS(target_latitude) - RADIANS(latitude)) / 2), 2) +COS(RADIANS(target_latitude)) * COS(RADIANS(latitude)) *POWER(SIN((RADIANS(target_longitude) - RADIANS(longitude)) / 2), 2)))
) <= 5;
http://www.lryc.cn/news/157172.html

相关文章:

  • 嵌入式基础知识-DMA
  • STM32 软件IIC 控制OLED 显示屏
  • 【系统设计系列】 DNS和CDN
  • thinkphp中使用Elasticsearch 7.0进行多表的搜索
  • 说说 TCP的粘包、拆包
  • PowerToys安装
  • Unity——LitJSON的安装
  • YOLOv5:对yolov5n模型进一步剪枝压缩
  • 大数据(八):Pandas的基础应用详解(五)
  • 【算法】归并排序 详解
  • linux 进程隔离Namespace 学习
  • 【MySQL】事务 详解
  • 爬虫到底难在哪里?
  • linux常用命令行整理
  • python字符串相关
  • JavaScript学习笔记01
  • golang 通用的 grpc http 基础开发框架
  • FSK解调技术的FPGA实现
  • Matlab图像处理-高斯低通滤波器
  • 文件上传之图片马混淆绕过与条件竞争
  • 代码随想录二刷day16
  • 【开发】安防监控/视频存储/视频汇聚平台EasyCVR优化播放体验的小tips
  • 力扣(LeetCode)算法_C++—— 只出现一次的数字
  • Windows配置SonarQube代码审查工具详细步骤(附带IDEA SonarLint插件使用)
  • 【Unity3D】UI Toolkit元素
  • Task :app:compileDebugKotlin FAILED
  • Android——数据存储(一)(二十一)
  • 机器学习课后习题 ---数学基础回顾
  • CS420 课程笔记 P4 - 以16进制形态编辑游戏文件
  • 计算机毕设之Python的高校成绩分析(含文档+源码+部署)