Php 需要从studentsDB统计页面了解每个城市有多少学生

Php 需要从studentsDB统计页面了解每个城市有多少学生,php,mysql,Php,Mysql,我正在编写统计页面PHP和MYSQL,我在数据库内容(id、名称、城市名称、电话、类)中有cities表(id、cityname)和students表 现在我想显示每个城市的学生人数,如前所示: city1 = 51 students city2 = 150 students city3 = 32 students . . city50 = 550 students 此函数在给定的城市中运行良好并返回学生: <?php $students = get_students_by_ci

我正在编写统计页面PHP和MYSQL,我在数据库内容(id、名称、城市名称、电话、类)中有cities表(id、cityname)和students表 现在我想显示每个城市的学生人数,如前所示:

city1 = 51 students 
city2 = 150 students 
city3 = 32 students 
.
. 
city50 = 550 students
此函数在给定的城市中运行良好并返回学生:

<?php
$students = get_students_by_cityname("city1");
if($students == NULL)
    die("Problem ..");

$scount = count($students);
if($scount == 0)
    die("No students ..");

echo "city1 has $scount students";

?>

我有50个城市,我必须重复这个功能50次

我试图使用循环,但没有工作,请我真的需要帮助


非常感谢

如果您有一个学生表,为什么不只进行一次查询呢

select cityname, count(*)
from students
group by cityname
order by cityname;

如果您没有创建SQL
GROUPBY
查询的权限,请尝试以下代码:(最好通过
GROUPBY
语句获取输出)


我不明白??朋友,我能用这个吗!!选择cityname,按cityname顺序按cityname从学生组中计数(*)@是的,您可以执行此查询:
选择cityname,count(*)作为studentcount,从students GROUP BY cityname按cityname排序
$cities = array('city1', 'city2', ..., 'city50');
$output = array();
foreach($cities as $city){
    $output[$city] = count(get_students_by_cityname($city));
}

foreach($output as $city => $count){
    echo "$city = $count students";
}