【发布时间】:2011-04-01 02:14:33
【问题描述】:
我有一个 MySQL 数据库中的邮政编码列表及其纬度和经度数据(列名:ZipCode、Lat、Lon)。
现在我必须发出搜索请求(搜索邮政编码)以从网站中提取信息。当我提出这个搜索请求时,结果包括邮政编码半径 50 公里范围内的所有信息。
现在,我不想发出不必要的大量搜索请求,所以我想尽量减少邮政编码的数量。所以我正在寻找一种过滤所有邮政编码的方法,这样我就只有它们之间的距离大于 50 公里的邮政编码。
不幸的是,我不知道该怎么做。 有人可以帮我解决这个问题吗?
【问题讨论】:
-
将“它们之间>50km”更改为“它们之间
-
@Chris 我认为 >50km 是故意的。我们想要一组 50 公里半径的搜索,以尽可能少的搜索覆盖所有邮政编码。因此,我们可以丢弃与我们已经选择的邮政编码相距 50 公里以内的任何邮政编码,而我们保留的邮政编码将相距 >50 公里。
-
结果应该是两个邮政编码之间的距离大于 50 公里的邮政编码列表。一开始我有一个列表,例如10.000 个邮政编码,其中包含大量邮政编码,但距离非常小。之后我应该有一个较小的邮政编码列表(例如 2000 个邮政编码),它们之间的距离 > 50 公里。
-
您可以尝试问gis.stackexchange.com 的这个问题,这是一个类似 stackoverflow 的新网站,用于解决地理信息系统 (GIS) 问题
标签: mysql geolocation distance latitude-longitude