我正在处理一个PHP/mySQL表,该表显示了我输入到数据库中的数据,并且我正在努力使其可排序。我的数据库中有两个表:
表"restaurant“有两列: ID和name
表"item“有几列: ID、name和restaurantID (restaurantID设置为使用"restaurant”表中的ID)
我想做的是根据餐厅ID在item表中出现的次数对餐厅进行排序。我相信肯定有一种简单的方法可以做到这一点,只是还没能弄清楚。任何帮助都将不胜感激!
发布于 2013-03-10 05:11:24
试试这个。
select r.name, count(i.ID)
from restaurant r
left join item i on i.restaurantID = r.ID
group by r.name
order by count(i.ID) desc发布于 2013-03-10 05:10:08
我相信你可以使用下面这样的查询来实现;
SELECT restaurant.*, COUNT(items.id) AS item_id FROM restaurants, items WHERE restaurant.id = items.restaurant_id ORDER BY item_id ASC; 正如你可能知道的,按多列排序也是可能的;
SELECT restaurant.*, COUNT(items.id) AS item_id FROM restaurants, items WHERE restaurant.id = items.restaurant_id ORDER BY item_id ASC, restaurant.`name` DESC;https://stackoverflow.com/questions/15315910
复制相似问题