【发布时间】:2014-08-10 10:47:09
【问题描述】:
我想从多行创建数组。在我的表中,我有 Year 字段,regd 字段用于计算学生人数,Class 字段。我想输出如下数据。
$data = array(
'2012' => array(
'KG_I' => 87,
'KG_II' => 80,
'I' => 90,
'II' => 120,
'III' => 100,
'IV' => 110,
'V' => 98,
),
'2013' => array(
'KG_I' => 82,
'KG_II' => 84,
'I' => 92,
'II' => 110,
'III' => 120,
'IV' => 108,
'V' => 90,
),
'2014' => array(
'KG_I' => 90,
'KG_II' => 83,
'I' => 95,
'II' => 110,
'III' => 120,
'IV' => 81,
'V' => 95,
),
);
我的尝试是这样的:
$std=array();
$hms="SELECT COUNT(DISTINCT regd) as stdNum, Class, Year FROM
student GROUP by Class";
$quar=mysql_query($hms);
$myarray = array();
while($row = mysql_fetch_array($quar)){
$myarray[$row['Class']] = $row['stdNum'];
}
我不知道如何输出 Year 数组。
【问题讨论】:
-
它应该是 GROUP by Year 然后是 class 即
GROUP BY Year, Class -
如果您认为您的 SQL 查询有问题,您应该导出您的学生表,以便我们进行测试。
-
在此处提供 SQL Fiddle 可能会有所帮助,以便我们查看您的测试数据。有些人甚至会为您分叉并提供建议的查询。
标签: php mysql arrays multidimensional-array