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

相关推荐
陈皮糖..3 小时前
27 届运维实习笔记|第三、四周:从流程熟练到故障排查,企业运维实战深化
运维·笔记·sql·nginx·ci/cd·云计算·jenkins
l1t8 小时前
DeepSeek v4辅助生成的单文件SQL查询示例页面
javascript·数据库·sql
それども9 小时前
Spring Bean 注入的优先级顺序
java·数据库·sql·spring
张子行的博客9 小时前
SQL 调优实战:跨表排序性能提升之路
数据库·sql·oracle
旺王雪饼 www11 小时前
MySQL常用查询语句
数据库·sql
Carsene12 小时前
开篇:我们距离理想的 Java SQL DSL 还有多远?
java·sql
看海的四叔13 小时前
【SQL】SQL的日期与时间函数
数据库·hive·sql·数据分析·时间函数·日期函数
看海的四叔13 小时前
【SQL】SQL-常见窗口函数有哪些-上篇
数据库·hive·sql·mysql·数据分析·窗口函数
bilI LESS14 小时前
SQL多行数据合并到一行中的一个字段
数据库·sql
Irene199114 小时前
Oracle 数据库表操作总结(新建表,删除表,表的增删改查等)
数据库·sql·oracle