PHP:选择一年中总计的数据

时间:2017-05-21 20:34:46

标签: php mysql mysqli

我正在做餐馆的网络经理。 我需要得到一年中所有月份的总和。 我是否需要对每个月进行查询,或者有一种方法可以在一个查询中使用FOR(循环)进行查询。 每个月都有不同的订单,不同的价值必须与月份相加才能分开显示。 如果每个月都不是一个接一个的话,我无法弄清楚如何做到这一点。

我认为这种方式可能会得到它。

for ($sum=0; $sum < 12; $sum++) { 
    $result = mysqli_query($mysqli,"SELECT table_number, SUM(price) as totalprice FROM orders WHERE MONTH(dates) = '$sum' && YEAR(dates) = '$year' GROUP BY table_number");
}

我有一个mysql数据库。 订单放在一个表“订单”上,其结构如下:

.ID(int)的 .NAME(VARCHAR) 。价格(INT) .table_number(INT) .date(日期/ Y.m.d)

2 个答案:

答案 0 :(得分:1)

我假设你有一个MySQL数据库。我假设您有一个表格,其中存储了所有订单。我假设您有一个字段valuedouble)和一个字段timetimestamp)。尝试

SELECT
  YEAR(`time`), MONTH(`time`), SUM(`value`)
FROM `table`
GROUP BY YEAR(`time`), MONTH(`time`)
ORDER BY YEAR(`time`) ASC, MONTH(`time`) ASC;

另请查看MySQL手册:

答案 1 :(得分:0)

制作一张你想要总结的东西。在其中添加要为每个月汇总的数据的列,并在表中添加另一列,该列存储每行所属的月份。 现在使用php查询此表以获取表的所有行并制作所有月份的arrray,检查每行所属的月份,并将要求总和的数据添加到特定月份的总和中。 像这样,您可以轻松找到每个月的总和,并可以实现您想要做的事情。