Access SQL:按定制案例排序,按月透视
我在Access中编写了一个交叉表“a”,从另一个表“B”中选择2个文本列和2个数字列、月份和帖子 代码的摘录如下所示Access SQL:按定制案例排序,按月透视,sql,date,ms-access,sql-order-by,pivot,Sql,Date,Ms Access,Sql Order By,Pivot,我在Access中编写了一个交叉表“a”,从另一个表“B”中选择2个文本列和2个数字列、月份和帖子 代码的摘录如下所示 Select B.xx... From B Group by B.xx... Pivot B.Month; …如果月份属于同一年,则该方法很有效,但由于月份是滚动的,因此当一年结束时,例如月份为{10月、11月、12月、1月、2月},顺序保持为B月ASC{01、02、10、11、12},我希望它按{10 11 12 01 02}的顺序旋转 更新:我修复了主要问题,但现在我想
Select B.xx...
From B
Group by B.xx...
Pivot B.Month;
…如果月份属于同一年,则该方法很有效,但由于月份是滚动的,因此当一年结束时,例如月份为{10月、11月、12月、1月、2月},顺序保持为B月ASC{01、02、10、11、12},我希望它按{10 11 12 01 02}的顺序旋转
更新:我修复了主要问题,但现在我想
1.将订单更改为2013年10月至2014年3月
2.将标题改为10到3
TOPIC SUB-TOPIC 1/2014 10/2013 11/2013 12/2013 2/2014 3/2014
language english 86 88 90 82 88 90
language french 70 77 75 79 82 80
mathematics geometry xx xx xx xx xx xx
mathematics calculus xx xx xx xx xx xx
创建包含年和月的表达式,并在轴中使用它 类似于
Pivot(年和格式(月,“00”))
或者,如果您在字段中有完整的日期,则类似于`透视格式(日期,“yyyy/mm/dd”)
提醒一下,年份、日期和月份可能是保留字,您可能需要不同的字段名-不确定,但可能这不会解决问题,但Access不支持
case/when
语法为什么年份和月份在两列中?以前是一列吗?@Brad A和B中只有月份列,我尝试通过传入来添加年份,但没有效果,因为pivot只在Monthb有效,但如何获得一年中的月份?是否有一列具有适当的日期/时间
数据类型?@Brad Yes在另一个表中,例如D,其中包含所有原始数据。我提取了月份(date_列)以用于最终的表A。我尝试提取年份(date_列),但最终数据透视只能透视一列……这是一个很好的建议,但如果我同时透视年份和月份,该列的列名会显示什么?是否“透视(年和格式(月,'00”)因为Monthnum有效?不,我只需要从常规数据中提取月份部分,因为这是唯一需要的。是的,月份和年份是保留的。我认为你的建议应该有效-因为Monthnum不应该改变任何东西。至于你会得到什么-列应该看起来像201309..201310..201311..201312..201401…201402等等-试试看你得到了什么,并应用任何你喜欢的格式,只要先是年份,然后是月份。