-1

我有一个名为的数据库表APPLICATION,其中包含以下列

applicationnumber varchar,
createddate datetime, 
applicantname varchar, 
material varchar, 
location varchar

我需要编写一个查询,显示每个月为这些位置创建的应用程序数量

例如。查询结果应如下所示

Location  | Jan2012 | Feb2012 | Mar2012 | Apr2012 
-----------------------------------------------------------------
London | 34322342 | 4342424 | 54353454 | 5434  
Chicago| 43242345 | 9943455 | 85748294 | 544  

结果是每个月为特定位置创建的应用程序数量。

每列将执行相同的查询逻辑,只是月份发生变化。我尝试使用该MONTH()函数,但我需要将月份矩阵作为一列而不是作为一行。

4

1 回答 1

0

您可以使用DATE_FORMATcreateddate 字段上的函数仅获取月份和年份,然后获取GROUP BY位置。这样的事情应该这样做:

SELECT
    `location`,
    COUNT(`applicationnumber`),
    DATE_FORMAT(`createddate`, '%M %Y') AS `date`
FROM `APPLICATION`
GROUP BY `location`;

应该给出每月行数的结果。

于 2012-12-31T11:27:28.663 回答