SQL 距离和半径突出显示

Posted

技术标签:

【中文标题】SQL 距离和半径突出显示【英文标题】:SQL distances and radius highlight 【发布时间】:2014-03-17 12:01:04 【问题描述】:

在我的数据库中,我有一个英国各地 1000 个地点的列表,在这里,我的邮政编码、纬度和经度在三列之内。我需要突出显示彼此之间 2 英里圆形半径内的任何东西,但我在这里碰到了一堵砖墙。

我可以在桌子上运行一些简单的计算来突出我需要的那些吗?任何简单或复杂的帮助将不胜感激。

【问题讨论】:

虽然这不能解决你的问题,但它可能会给你一些想法:***.com/a/13951139/1504882 【参考方案1】:
SELECT ((ACOS(SIN($lat * PI() / 180) * SIN(lat * PI() / 180) 
      + COS($lat * PI() / 180) * COS(lat * PI() / 180) * COS(($lon – lon) * PI() / 180)) * 180 / PI()) * 60 * 1.1515) AS `distance` 
FROM `members` 
HAVING `distance`<=’10′ 
ORDER BY `distance` ASC

从链接中获取 http://zcentric.com/2010/03/11/calculate-distance-in-mysql-with-latitude-and-longitude/

它适用于 MySQL,但您可以针对任何所需的数据库调整代码。

【讨论】:

以上是关于SQL 距离和半径突出显示的主要内容,如果未能解决你的问题,请参考以下文章

如何让 dbeaver 突出显示 sql 错误以便于开发过程

突出显示 OBIEE 或 SQL 中父值的子值差异

当我添加平移手势识别器时,我的按钮不会保持突出显示?

SQL如何在某些情况下突出显示重复项

如何修改此 SQL 查询中的 XML 代码以突出显示表的特定行?

WPF 更改(覆盖)所有控件中的突出显示和边框颜色