嗨我需要帮助解决我的问题。MYSQL从数据库中选择每周和每月一次
我想生产每月和每周的报告。
首先,我已经创建了一个名为calendar_table
数据库,其中包含所有的日期格式二零一零年至2040年
为了形象化的问题更多:
SELECT DATE_FORMAT(DATE(calendar_table.c_date),'%d %b %Y') AS DATE, IFNULL(SUM(buyers_table.sales_total),0) AS total_sales FROM buyers_table RIGHT JOIN calendar_table ON (DATE(buyers_table.buyer_date) = calendar_table.c_date) WHERE (calendar_table.c_date BETWEEN DATE_SUB(NOW(), INTERVAL 1 WEEK) AND NOW()) GROUP BY calendar_table.c_date
的电流输出为:
DATE total_sales
23 Nov 2016 0
24 Nov 2016 0
25 Nov 2016 0
26 Nov 2016 4500
27 Nov 2016 5800
28 Nov 2016 0
29 Nov 2016 3500
因此,它产生一周而不是每周的日产量。
我的愿望输出应该是这样的:
DATE total_sales
17 Oct 2016 0
24 Oct 2016 0
31 Oct 2016 0
07 Nov 2016 4500
14 Nov 2016 5800
21 Nov 2016 0
28 Nov 2016 3500
当然这里的逻辑是,每月
希望同在,你帮我,我有点迷惑:)
谢谢
一般来说,数据显示的问题(包括丢失数据),最好在应用程序代码级解析(如一点的PHP) – Strawberry