sql根据两个点的经纬度计算距离

-- Hive计算两个经纬度坐标直线距离(单位:公里)

-- 公式

-- ASIN(

-- SQRT(

-- POWER(SIN((lat1-lat2)*ACOS(-1)/360),2) +

-- COS(lat1*ACOS(-1)/180)*COS(lat2*ACOS(-1)/180)

-- *POWER(SIN((lon1-lon2)*ACOS(-1)/360),2)

-- )

-- )*6378137*2/1000 as distance

-- example

select

-- exam1(人民广场/东方明珠广播电视塔,121.481318,31.235056/121.506379,31.245414)

ASIN(

SQRT(

POWER(SIN((31.235056-31.245414)*ACOS(-1)/360),2) +

COS(31.235056*ACOS(-1)/180)*COS(31.245414*ACOS(-1)/180)

*POWER(SIN((121.481318-121.506379)*ACOS(-1)/360),2)

)

) *6378137*2/1000 as distance1

-- exam2(上海虹桥国际机场/上海浦东国际机场,121.346817,31.203347/121.81509,31.157478)

,

ASIN(

SQRT(

POWER(SIN((31.203347-31.157478)*ACOS(-1)/360),2) +

COS(31.203347*ACOS(-1)/180)*COS(31.157478*ACOS(-1)/180)

*POWER(SIN((121.346817-121.81509)*ACOS(-1)/360),2)

)

) *6378137*2/1000 as distance2

相关推荐
姜太小白4 小时前
【Oracle】记排查sh脚本调用SQL执行卡顿的排查总结
数据库·sql·oracle
镜舟科技6 小时前
为什么 Text-to-SQL 总是停在 Demo?
数据库·sql·demo·text-to-sql·镜舟科技·mip·语义视图
大牧师7 小时前
TypeORM 学习教程
数据库·sql·学习·node.js·orm·nest.js·typeorm
数智启示录9 小时前
PostgreSQL 执行计划实战(第 9 篇):SQL 和索引没变,计划为什么突然慢一百倍
数据库·经验分享·sql·postgresql·面试
润乾软件10 小时前
SQLazy:从事件表中查出下一组的开始时刻
sql·sqlazy
养生技术人11 小时前
Oracle OCP认证考试题目详解082系列第17题
运维·数据库·sql·oracle·ocp
隔窗听雨眠12 小时前
活动中台系统慢SQL治理实践:从监控告警到性能优化的全链路方法论
sql·性能优化·github
数智启示录1 天前
PostgreSQL 计划缓存实战(第 10 篇):预编译 SQL 前五次都快,第六次为什么可能变慢
经验分享·sql·缓存·postgresql·面试
ClouGence1 天前
CloudDM 支持达梦、KingbaseES、GoldenDB,国产数据库也能统一管起来
数据库·sql·开源
CarIise1 天前
JDBC数据库操作与SQL注入防范
数据库·sql