gpt4 book ai didi

php - MySQL - 存储坐标以避免重复

转载 作者:行者123 更新时间:2023-11-29 21:05:16 25 4
gpt4 key购买 nike

我正在尝试构建像 Instagram 一样的位置标签...

我根据 Google Api 函数 getBounds() 选择坐标,如下所示:
(注:swlat、swlng、nwlat、nwlng = a、b、c、d)

  SELECT * FROM table WHERE
(a < c AND lat BETWEEN a AND c) OR (c < a AND lat BETWEEN c AND a)
AND
(b < d AND lng BETWEEN b AND d) OR (d < b AND lng BETWEEN d AND b)

在插入坐标之前,我会检查数据是否存在于表中以避免重复。但问题是,当您搜索特定地点时,Google ApiMapKit 返回不同的坐标。

现在我正在存储位置的名称以检查重复项。这可能可行,但也许有更好的方法:)

所以我的问题是:

  • 如何存储坐标以避免尽可能少的重复。也许有一个像“place_id”(在 google API 中)这样的标识符在使用 Google Api 或 MapKit 时适用于这两种情况
  • 我真的需要存储位置名称吗?Instagram 是否使用任何 API 来获取有关位置的详细信息?

谢谢:)

最佳答案

解决方案实际上在于如何实现自己的数据库 - 任何给定的纬度/经度坐标只有一个位置。但你不能强制 Google 或 MapKit 改变。因此,您将始终陷入这种差异,并且对可能的文本值 name=like '%placename%' 的搜索性能始终很低,并且不能保证像您所担心的那样准确。因此,我建议您为 Google 和 MapKit 创建单独的“位置”表,并让用户从 GUI 中过滤它们。还建议为每个列索引 lat 和 lng 列。

关于php - MySQL - 存储坐标以避免重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36874118/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com