如果它是固定数量的列,您可以使用带有 GROUP BY 的 SELECT 来执行此操作。
让我给你看一个关于“T_Capital_Rainfall_Q”表的例子(见下文):
SELECT Capital, Cal_Year
, Max(Iif(Quart="Q1", Quart_Rainfall, Null)) AS Q1
, Max(Iif(Quart="Q2", Quart_Rainfall, Null)) AS Q2
, Max(Iif(Quart="Q3", Quart_Rainfall, Null)) AS Q3
, Max(Iif(Quart="Q4", Quart_Rainfall, Null)) AS Q4
FROM T_Capital_Rainfall_Q
GROUP BY Capital, Cal_Year ;
上述 SQL 操作产生以下输出记录列表(未对齐,抱歉):
Capital Cal_Year Q1 Q2 Q3 Q4
Beijing 2018 0 4 7,8 17
Washington 2018 12.13 5.67 2.26 12.7
如果是可变数量的列,唯一的方法是使用 TRANSFORM Query。
上面例子的表格是:
T_Capital_Rainfall_Q
Capital Cal_Year Quart Quart_Rainfall
Beijing 2018 Q1 0
Beijing 2018 Q2 4
Beijing 2018 Q3 7.8
Beijing 2018 Q4 17
Washington 2018 Q1 12.13
Washington 2018 Q2 5.67
Washington 2018 Q3 2.26
Washington 2018 Q4 12.7
LightningGuide.net 中的更多信息。