[英]Get daily sales from a database
在这个强大的社区的帮助下,我获得了此解决方案,可以按2小时间隔对每日销售额进行分组。
SELECT SUBSTRING(DATE(o.date_purchased) +
INTERVAL (HOUR(o.date_purchased) -
HOUR(o.date_purchased) MOD 2) HOUR , 12) AS time_purchased,
ROUND(SUM(ot.value), 2) AS sales_today,
COUNT(*) AS orders_today
FROM orders AS o
JOIN orders_total AS ot ON ot.orders_id = o.orders_id
WHERE ot.class = 'ot_total'
AND o.date_purchased >= CURRENT_DATE()
AND o.date_purchased < CURRENT_DATE() + INTERVAL 1 DAY
GROUP BY DATE(o.date_purchased) +
INTERVAL (HOUR(o.date_purchased) -
HOUR(o.date_purchased) MOD 2) HOUR
如何更改此查询以获取一个月中每一天的每日销售额。 自动从第一天的第一天开始到最后一个月的最后一天结束?
要获取当月的每日销售额,您可以将查询写为
SELECT DATE(o.date_purchased) AS date_purchased,
ROUND(SUM(ot.value), 2) AS sales_per_day,
COUNT(*) AS orders_today
FROM orders AS o
JOIN orders_total AS ot ON ot.orders_id = o.orders_id
WHERE ot.class = 'ot_total'
AND o.date_purchased >= LAST_DAY(NOW() - INTERVAL 1 MONTH) + INTERVAL 1 DAY
AND o.date_purchased <= LAST_DAY(NOW())
GROUP BY DATE(o.date_purchased)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.