2014-01-24 118 views
0

你好,我使用php和mysql.I有一个表,其中一列作为recdatetime作为datetime数据类型。月明智总和列mysql

如果我搜索两个月之间的记录,我想要同一张表的数量列的总和。

如果我有以下记录。

quantity recdatetime 
**44** `2014-01-01 16:53:06` 
**14** ` 2014-01-21 16:53:06` 
**10** `2013-12-21 16:53:06 ` 
**17** `2013-12-22 16:53:06 ` 
**29** `2013-11-20 16:53:06` 

如果我2013年11月和2014年1月间搜索我想在下面的方式输出。

November December January  
29  27  58 

我想要Mysql查询上面的输出。

+1

您的问题。第一个是如何按月进行汇总,第二个是如何对表进行旋转,以便将月份行变为列。你有什么尝试? –

回答

1

开始与此:

SELECT SUM(quantity) AS s, DATE_FORMAT(recdatetime, '%M') AS m 
FROM table_name 
GROUP BY DATE_FORMAT(recdatetime, '%Y-%m') 
0

您可以使用一个月(recdatetime),SUM(数量)和组按月(recdatetime)。

Select year(recdatetime), month(recdatetime), sum(quantity) as total from x 
group by year(recdatetime),month(recdatetime); 

您将需要一年或它也将总结不同年份的月份。你通常不想要这个。并添加一个where条件来获得你想要的月份。希望你可以自己做。

切换行和列可以在输出中完成。

-1

你可以尝试这样的:需要被分成两个问题

select sum(quantity) as sumQty,recdatetime FROM table_name group by Month(recdatetime