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

相关推荐
GoingYoo2 小时前
MySQL原理:逻辑架构
数据库·sql·mysql
爱的叹息3 小时前
针对 SQL 查询中 IN 子句性能优化 以及 等值 JOIN 和不等值 JOIN 对比 的详细解决方案、代码示例及表格总结
数据库·sql·性能优化
半点闲3 小时前
解决Oracle PL/SQL中“表或视图不存在“错误的完整指南
数据库·sql·oracle·pl/sql
爱的叹息3 小时前
关于 数据库 UNION 和 UNION ALL 的使用,以及 分库分表环境下多表数据组合后的排序和分页问题的解决方案 的详细说明,并以表格总结关键内容
数据库·sql
我有医保我先冲11 小时前
SQL复杂查询与性能优化:医药行业ERP系统实战指南
数据库·sql·性能优化
我有医保我先冲17 小时前
SQL复杂查询与性能优化全攻略
数据库·sql·性能优化
烧瓶里的西瓜皮17 小时前
Go语言从零构建SQL数据库引擎(2)
数据库·sql·golang
Alt.918 小时前
MyBatis基础五(动态SQL,缓存)
java·sql·mybatis
viperrrrrrrrrr71 天前
大数据学习(95)-谓词下推
大数据·sql·学习
深圳厨神1 天前
mysql对表,数据,索引的操作sql
数据库·sql·mysql