Geocode Radius会在行中生成多个值

时间:2015-03-12 11:29:27

标签: php mysql geocode

我在尝试使用Google GEOcode radius search解决问题时遇到了一些困难。我把一切都设置得很好并且正常工作: -

$this->db->select('*, ( 3959 * acos( cos( radians('.$lat.') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('.$lng.') ) + sin( radians('.$lat.') ) * sin( radians( lat ) ) ) ) AS distance'); 

这将返回DB在用户设置里程的半径范围内的结果。

然而,一位用户在英国拥有多家商店,因此他们的主要商店位于曼彻斯特,其中包括DB' lat' ' LNG'组。然而,他们在伦敦的商店较小。数据库中的这些字段是' storelat' ' storelng&#39 ;.但是,如果有人搜索到伦敦,他们就不会出现在结果中,因为很明显它只会从' lat'中检索值。和' lng'。

如何查询数据库中多个lat和lng值的弧度?它可能是不可能的,但我正在尝试我能想到的最终只是MySQL错误。

非常感谢任何帮助或正确方向的踢法。

非常感谢 Ĵ

1 个答案:

答案 0 :(得分:0)

同一个表中是否包含latstorelat列?为什么?主存储和“较小”存储应该是同一个表中的单独行,并使用相同的lat / lng对列。