我正在做餐馆的网络经理。 我需要得到一年中所有月份的总和。 我是否需要对每个月进行查询,或者有一种方法可以在一个查询中使用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)
答案 0 :(得分:1)
我假设你有一个MySQL数据库。我假设您有一个表格,其中存储了所有订单。我假设您有一个字段value
(double
)和一个字段time
(timestamp
)。尝试
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,检查每行所属的月份,并将要求总和的数据添加到特定月份的总和中。 像这样,您可以轻松找到每个月的总和,并可以实现您想要做的事情。