我有一个名为APPLICATION
的db表,其中包含以下列
applicationnumber varchar,
createddate datetime,
applicantname varchar,
material varchar,
location varchar
我需要编写一个查询,显示每个月为位置创建的应用程序数量
EG。查询结果应如下所示
Location | Jan2012 | Feb2012 | Mar2012 | Apr2012
-----------------------------------------------------------------
London | 34322342 | 4342424 | 54353454 | 5434
Chicago| 43242345 | 9943455 | 85748294 | 544
结果是每个月为特定位置创建的应用程序数量。
每个列都将执行相同的查询逻辑,只需更改月份。
我尝试使用MONTH()
函数,但我需要将月份矩阵作为列而不是行。
答案 0 :(得分:0)
您可以使用createddate字段中的DATE_FORMAT
功能仅获取月份和年份,然后获取GROUP BY
位置。这样的事情应该这样做:
SELECT
`location`,
COUNT(`applicationnumber`),
DATE_FORMAT(`createddate`, '%M %Y') AS `date`
FROM `APPLICATION`
GROUP BY `location`;
应该给出每月行数的结果。