按位置显示项目。 Mysql选择

时间:2010-09-21 16:50:22

标签: php mysql select

我有两个MySQL表,“位置”和项目“:

locations
  `id` `name` `address` `latitude` `longitude`

现在我使用MySQL SELECT,允许用户输入纬度和经度,并按距离对位置进行排序。这很完美。

现在我有一个项目清单:

items
  `id` `location` `title` `description` `display`

现在我想显示每个位置的项目,如果该项目的display = true。我希望这是有效率的,因为某些位置没有任何项目,或者没有项目设置为display = true。

2 个答案:

答案 0 :(得分:2)

此查询将为您提供按位置

排序的项目列表
SELECT items.*, locations.* FROM items JOIN locations ON locations.id = items.location WHERE items.display = 'true' ORDER BY locations.id;

答案 1 :(得分:1)

select location.name, items.title, items.description
from location, items
where location.id = items.location
and items.display = 'true'
order by location.name

我认为这样做符合您的要求,但如果没有其他信息,很难说清楚。例如,items表中的location字段实际上是位置表的外键(从上下文来看并不明显)。