Php 选择所有项目,按项目使用次数排序

Php 选择所有项目,按项目使用次数排序,php,mysql,sql,codeigniter,Php,Mysql,Sql,Codeigniter,这个问题在我脑子里是有道理的,但我花了很长时间试图去写它,却一无所获。我使用的是Codeigniter及其活动记录功能,但任何标准的MYSQL都可以 我有一份场馆清单和活动清单。一个场馆可以有许多活动,每个活动存储它所在的场馆 我想运行一个查询,获取所有场馆,并根据它们拥有的活动数量对它们进行排序 因此,列表中的第一个是有20项赛事的场馆,最后一个是有0项赛事的场馆 有人能帮我解答这个问题吗?表结构简单 Venues(id, name, address) Events(id, venue_id,

这个问题在我脑子里是有道理的,但我花了很长时间试图去写它,却一无所获。我使用的是Codeigniter及其活动记录功能,但任何标准的MYSQL都可以

我有一份场馆清单和活动清单。一个场馆可以有许多活动,每个活动存储它所在的场馆

我想运行一个查询,获取所有场馆,并根据它们拥有的活动数量对它们进行排序

因此,列表中的第一个是有20项赛事的场馆,最后一个是有0项赛事的场馆

有人能帮我解答这个问题吗?表结构简单

Venues(id, name, address)
Events(id, venue_id, event_name)
任何帮助都将不胜感激

谢谢诸如此类的事

SELECT v.id, COUNT(*)
FROM Venues v, Events e
WHERE v.id = e.id
GROUP BY v.id
ORDER BY COUNT(*) DESC;

您不希望获取事件。是吗?嗨,谢谢你的回复-正确,我不想展示这些活动,我只想展示场馆,但按举办的活动数量排序:-)绝对完美。这正是我想要的。非常感谢你的帮助。