我有一张有(姓名,金钱,日期)的表,我想获得(姓名,第 1 个月的钱,第 2 个月的钱等到第 12 个月)
怎么做?
我知道如何从日期中提取月份;
您可能想要构建一个数据透视表,使用月份函数为每个日期生成月份值。然后,您可以将此月值用作数据透视表中的列。
注意:不同年份相同月份的值将被汇总,除非您明确过滤特定年份的数据
您想要的在 msaccess 用语中称为交叉表查询(在更大的系统中称为 PIVOT)。
这是Allen Brown的精彩文章,非常注重细节。
第一次查询:name,iif(month(date) = 1,money,0)AS m1,以此类推一直到m12
第二次查询:name, sum(m1) AS mo1, 依此类推直到 mo12 按名称分组
限制:每月只能插入一次,并且查询必须有一个只能选择 1 年的年份过滤器。