使用交叉表

交叉表是常见的表格类型,特点是在两个标题数据正交列表之间显示值矩阵。看上去会像以下表格。

示例 1:  

Year Jan Feb Mar Apr May Jun
2008 45 65 78 12 78 22
2009 11 23 22 22 45 85
2010 65 56 22 79 12 56
2011 45 24 32 78 55 15
2012 45 56 35 78 68 82

如果此表格只是简单加载到 QlikView,结果将为Year使用一个字段,每个月份各一字段。通常,这并非您希望看到的结果。您可能更希望生成三个字段:一个用于每一标题类别(YearMonth),一个用于矩阵内的数据值。

通过将 crosstable前缀添加到 LOADSELECT 语句可实现此操作。

crosstable (Month, Sales) LOAD * from ex1.xlsx;

这可以在 QlikView中创建下列结果:

交叉表通常位于许多限定列之后,这些列将被直接读取。在此例中,将会出现一个限定列,即Year

示例 2:  

Salesman Year Jan Feb Mar Apr May Jun
A 2008 45 65 78 12 78 22
A 2009 11 23 22 22 45 85
A 2010 65 56 22 79 12 56
A 2011 45 24 32 78 55 15
A 2012 45 56 35 78 68 82
B 2008 57 77 90 24 90 34
B 2009 23 35 34 34 57 97
B 2010 77 68 34 91 24 68
B 2011 57 36 44 90 67 27
B 2012 57 68 47 90 80 94

在此例中,左边有两个限定列,紧跟矩阵列之后。限定列的数量可表述为 crosstable前缀的第三个参数,如下所述:

crosstable (Month, Sales, 2) LOAD * from ex2.xlsx;

这可以在 QlikView中创建下列结果:

另请参阅: