显示月份明智的报告

时间:2015-03-17 06:53:26

标签: javascript php html phpmyadmin

我有这张桌子

| box    | indate     |
 ----------------------
| 500    | 2015-01-19 |
 ----------------------
|200     | 2015-01-17 |
 ---------------------
| 1000   | 2015-03-19 |
 ---------------------
| 500    | 2015-03-7  |
 ---------------------

我想要这个Repot

| Year - Month| Total In box |
------------------------------
| 2015- 01    | 700          |
------------------------------
| 2015-03     | 1500         |       
------------------------------

此外,我想在php中显示年度报告。

这是我到目前为止所尝试的:

SELECT DATE_FORMAT(indate,'%Y-%m'), SUM(box) 
FROM in GROUP BY YEAR(indate), MONTH(indate)

4 个答案:

答案 0 :(得分:1)

您可以格式化日期以仅显示年份和月份。您还可以对结果进行分组,并将其与分组行的总和相结合。

在MySQL中格式化日期值(即日期,日期时间),您可以使用formatters将日期格式化为特定格式。

查看此fiddle

答案 1 :(得分:0)

尝试:

Select DATE_FORMAT(indate,'%Y-%m') as indateDate, sum(box) as totalBox FROM <your_table_name> GROUP BY indateDate;

答案 2 :(得分:0)

你非常接近 只需修改您的查询,然后使用SUM(box)代替COUNT(box) 像这样:

SELECT DATE_FORMAT(indate,'%Y-%m') as indate, SUM(box) 
FROM Table1 GROUP BY YEAR(indate), MONTH(indate);

对于明智的报告,只是不要在分组依据中包含MONTH

SELECT DATE_FORMAT(indate,'%Y-%m') as indate, SUM(box) 
FROM Table1 GROUP BY YEAR(indate);

答案 3 :(得分:0)

尝试:

 SELECT concat(YEAR(indate), '-', MONTH(indate)), sum(box)
 FROM
 reporttable
 GROUP BY YEAR(indate), MONTH(indate) ASC
相关问题