用于大圆距离计算的Mysql算法

时间:2012-03-08 16:40:27

标签: mysql doctrine

我想在将数据插入数据库之前计算两个邮政编码之间的距离。基本上我有这些表格

邮政编码表

| zipcode |   lat   |  long  |

  01230     60.1756   23.12

  01240     60.1756   25.25

客户表

| name | zip code |

  foo    01230

销售人员表

| name |  zip code  |  workingdistanceinkm

  foo     01240        200

  foo1    01230        100

我想要做的是在客户数据插入客户表之前,计算销售人员与客户之间的距离(如果是销售员工作区域)。

我的方法是计算客户与销售人员表中的每个销售人员之间的距离。但是如果我有1000个销售人员,这会对示例提出很多疑问,这意味着我正在计算要插入的新客户数据与1000名销售人员中的每一个之间的距离。

我想知道是否可以编写一个查询来执行相同的任务。

2 个答案:

答案 0 :(得分:1)

看看

www.zipcodeworld.com/samples/distance.php.html

请注意,zipcodes之间的距离计算并不总是距离的实际表示。这只是两点之间假想直线的距离。但实际上它更长

答案 1 :(得分:0)

URL下面给了我很多帮助。请检查“使用MySQL查找位置”部分。感谢。

https://developers.google.com/maps/articles/phpsqlsearch_v3