sql语句怎么写算坐标经纬度之间的距离?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql语句怎么写算坐标经纬度之间的距离?相关的知识,希望对你有一定的参考价值。

参考技术A declare @x1 float
declare @x2 float
declare @y1 float
declare @y2 float
set @x1 = 5
set @x2 = 10
set @y1 = 5
set @y2 = 10
select power(power((@x1-@x2),2)+power((@y1-@y2),2),0.5)

如何计算两对坐标(纬度/经度)之间的距离

【中文标题】如何计算两对坐标(纬度/经度)之间的距离【英文标题】:How to calculate the distance between two pairs of coordinates (latitude/longitude) 【发布时间】:2019-02-20 03:55:36 【问题描述】:

例如,我有两对坐标:(103.82 W, 32.024 N) 和 (104.2 W, 32.587 N)。我试图弄清楚如何计算这两个点之间的距离,然后以 DMS 形式表示该距离。当我使用距离公式时,我得到一个十进制数,当我将其转换为 DMS 格式时,它不能准确地表示我想要的数字。我应该使用距离公式,所以我不确定我在这里遗漏了什么或者我可能做错了什么。我不相信我需要为此使用半正弦公式。

任何帮助将不胜感激!

【问题讨论】:

这是一个编码问题吗?您使用什么语言?你试过什么,你的代码或伪代码在哪里? 【参考方案1】:

Rosetta Code web site 提供各种计算机语言(Java、JavaScript、Python 等)的工作代码示例,用于使用 Haversine 公式计算两个纬度/经度坐标之间的距离。

您可以使用此online distance calculator 验证您的距离结果以进行比较。

给定十进制度坐标,您可以将该数字转换为 DMS 组件,反之亦然。该公式已在相关answer 中得到解答,并且有online converters 可以在DMS 和十进制度之间进行转换。

【讨论】:

以上是关于sql语句怎么写算坐标经纬度之间的距离?的主要内容,如果未能解决你的问题,请参考以下文章

mysql实现经纬度计算两个坐标之间的距离sql语句

sql怎么将一系列点经纬度坐标匹配到某市

利用SQL计算两个地理坐标(经纬度)之间的地表距离

怎么算经纬度和距离呢?

一个纬度/经度坐标与使用 SQL 的固定坐标之间的近似距离

C# 在 Linq 查询 WHERE 语句中返回两个纬度/经度坐标之间的计算距离