MS ACCESS 数据库分成一个月

MS ACCESS database broken into month

再次回到困扰我一段时间的问题。这是我的困境。 我有一个 table 看起来像这样

| ID |   DATE         |  SALES |
  1     2012-01-20      100.45
  1     2012-01-22       55.45
  1     2012-02-15       66.77
  3     2012-01-19       33.33  
  3     2012-02-19       69.44
  4     2012-02-22       77.55
  etc

所以我需要做的是制作一个新的 table,将所有 ID 归为一组,然后将他们的销售额添加到月份范围内(即 2012-01-012012-01-30 )

新的 table 看起来像这样

ID    |   01-2012    |   02-2012   |  03-2012 | etc | etc
1     |   155.90     |     66.77   |
3     |  33.33       |     69.44   |
4     | 000.00       |    77.55    |

即使总和为 none

,也需要显示所有记录

非常感谢任何意见或帮助!感谢互联网!

您可以使用 Transform 命令对数据进行透视。

TRANSFORM SUM(SALES)
SELECT ID, FORMAT([DATE], 'yyyy-MM')
FROM YourTableName
WHERE [DATE] BETWEEN #Date1# AND #Date2#
GROUP BY ID, FORMAT([DATE], 'yyyy-MM')

用正确的日期替换 Date1 和 Date2(ISO 格式:MM/dd/yyyy)。

顺便说一句:永远不要使用保留字作为列名!

参见:SQL Reserved Words