繁体   English   中英

如何根据另一个表获取每个值的计数?

[英]How do I get a count of each value, based from another table?

我有一个志愿者_2009 表,列出了所有志愿者和一个场地表,列出了志愿者可以分配到的场地,他们只分配给一个。

我想做的是打印出分配到每个场地的志愿者人数。

我希望它像这样打印出来:

地点名称:志愿者人数

表:志愿者venue_id列:id、name、 venue_id

表:场地列:id、venue_name

他们通过volunteers_2009.venue_id = venues.id联系起来

这就是我所拥有的,但它无法正常工作。

$sql = "SELECT venues.venue_name as 'Venue', COUNT(volunteers_2009.id) as 'Number Of 
Volunteers' FROM venues ven JOIN volunteers_2009 vol ON 
(venues.id=volunteers_2009.venue_id) GROUP BY venues.venue_name ORDER BY
venues.venue_name ASC";

$result = mysql_query($sql);

while(list($name,$vols) = mysql_fetch_array($result)) {
    print '<p>'.$name.': '.$vols.'</p>';
}

不是 MySQL 人,所以这可能真的是错误的,但是当你给你的表一个别名时,你不需要用那个名字来引用它。

$sql = "SELECT ven.venue_name as 'Venue', COUNT(vol.id) as 'Number Of 
Volunteers' FROM venues ven JOIN volunteers_2009 vol ON 
(ven.id=vol.venue_id) GROUP BY ven.venue_name ORDER BY ven.venue_name ASC";
$query = "SELECT ven.venue_name AS 'Venue', count(*) AS 'Number of venues'
         FROM volunteers_2009 AS vol, venues AS ven WHERE vol.venue_id = ven.id 
         GROUP BY ven.venue_name";

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM