【问题标题】:simple SQL request problem简单的SQL请求问题
【发布时间】:2011-08-25 22:08:09
【问题描述】:

我有两张桌子。

包含某个城市的纬度、经度和 ID 的位置

poi 包含具有唯一 id 的 poi 列表

我正在尝试选择半径内的所有 POI

SELECT location.id, longitude, latitude (6371 * acos(cos(radians(46.4166268823293)) * cos(radians(latitude)) * cos(radians(longitude) - radians(-1.5623357632014)) + sin(radians(46.4166268823293)) * sin(radians(latitude)))) AS distance 
FROM location,poi 
WHERE poi.id = location.id
HAVING distance < 20
ORDER BY distance LIMIT 0 , 20

所以我选择了我 20 公里半径内的所有位置。该位置的 id 链接到 PO 表的唯一 id,所以这就是我尝试加入这两个表的原因

但连接似乎不起作用。当您在 phpMyAdmin 上尝试此请求时,它仅显示 id、经度和纬度,但不显示 POI 表的字段(我对此感兴趣..)

有人可以帮助我吗?谢谢

【问题讨论】:

    标签: php sql html database join


    【解决方案1】:

    您没有选择 poi 的任何字段。试试SELECT ... poi.* FROM ...

    【讨论】:

      【解决方案2】:

      这些是您的 select 子句中的唯一字段。如果你这样做了

      SELECT POI.*,location.id, longitude, latitude 
      

      你会看到更多

      【讨论】:

        【解决方案3】:

        但是你没有从POI中选择一个字段,你期望这个字段在结果集中如何?

        Select location.id, POI.Field-from-POI, longitude, latitude ...
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-12-28
          相关资源
          最近更新 更多