我需要获得很多值的总和与来自SQL查询相同的密钥。 例如...说我有30行从查询返回,他们看起来像这样。SQL如何总结许多记录键:值对?
1) (a:2), (b:4),(f:1), (h:3)
2) (c:2), (f:4),(t:1), (z:3)
3) (a:5), (b:2),(s:1), (z:3)
4) (d:2), (g:4),(s:1), (t:3)
and so on....
我需要做的是总结所有的“a”,所有的“b”和所有“C”等 并把所有到一个数组或对象,以便我可以访问他们以后处理。
$总= [(A:7),(B:6),(C:2),(d:2).....(Z:6)];
有没有办法做到这一切从SQL?或者我必须使用PHP对外部所有这些记录进行求和?
这是我的SQL代码,以获得30个记录......
while($row = mysql_fetch_array($rs)) {
$queryActivity = "SELECT activity, count(activity) FROM users u, activities_users au, activities a WHERE ($row[zip] = u.zip AND u.id = au.user_id AND au.activity_id = a.id) GROUP BY a.activity";
$rs2 = mysql_query($queryActivity);
while($row2 = mysql_fetch_array($rs2)) {
echo "<tr><td>$row2[0]</td><td>";
echo "<tr><td>$row2[1]</td><td>";}
它返回的所有活动和这些活动的一定邮编总和。我只需要为每项活动总计所有款项。
你的意思是像'SUM'和'GROUP BY'的组合? – frz3993
1,2,3,4 - 这些行?它是每列一列还是每列四列? – Andrew
1,2,3,4是行.....在我的例子中每行4列。在实际使用中,它可以是30行,最多170列,每列都有唯一的密钥。有些行可能有一列,有些可能有多达170列。和其他行之间的任何东西。复杂的查询吧? – whitelight