数据库
Date Price qty
2012-10-21 $11 150
2012-10-22 $12 90
2012-10-22 $12 10
2012-10-23 $13 250代码
$result = mysqli_query($con, "SELECT * FROM table ORDER BY 'date'");
while ($row = mysqli_fetch_array($result)) {
$orders[] = array(
'Date' => $row['date'],
'price' => $row['price'],
'Quantity' => $row['qty']
);
}我不需要得到重复的日期,对于那些重复的日期,需要得到平均的price和Qty的和,如下例所示:
示例
Date Price qty
2012-10-21 $11 150
2012-10-22 $12 100
2012-10-23 $13 250我试着使用Array-map,但是我在这个帮助上失败了,我们真的很感激
发布于 2013-11-03 07:21:32
我建议使用GROUP BY和相应的聚合函数使用这个查询将问题转移到数据库中
SELECT `date`, AVG( `price` ), SUM( `qty`)
FROM `table`
GROUP BY `date`
ORDER BY `date`一般来说,让MySQL做这样的工作比首先将数据传输到您的应用程序并在那里重新排列要好得多。
发布于 2013-11-03 07:22:37
更改查询
SELECT Date, AVG(Price), SUM(Qty) FROM table
GROUP BY Date或更改php以检查数组中的日期并计算平均值和和。
发布于 2013-11-03 07:24:43
你能试试这个吗
$result = mysqli_query($con, "SELECT date, AVG(Price) as price, SUM(qty) FROM table GROUP BY date ORDER BY date");
while ($row = mysqli_fetch_array($result)) {
$orders[] = array(
'Date' => $row['date'],
'price' => $row['price'],
'Quantity' => $row['qty']
);
}https://stackoverflow.com/questions/19750706
复制相似问题