我目前在Qlikview数据透视表中使用以下计算字段。
=if([Event Type] = 'PO',date(MonthStart([EvtDt.Date Code]-15), 'YYYY-MMM'),if([Event Type] = 'WO',date(MonthStart([EvtDt.Date Code]-50), 'YYYY-MMM'), if([Event Type] = 'BFT PLAN',date(MonthStart([EvtDt.Date Code]), 'YYYY-MMM'))))
是否可以在LOAD脚本中预先计算此字段,以便数据透视表中的字段只是日期值?
答案 0 :(得分:3)
在加载脚本中预先计算这将是提高大数据量上的UI性能的方法,并且它还提高了可维护性,因为您可以在整个UI中重用该字段,而无需将逻辑存储在多个位置(即多个位置)图表)。
如果没有看到您的数据结构,很难为您提供确切的结构,但是,假设您在加载期间在内存表中同时提供了两个字段,那么您应该只需扩展加载脚本以将计算包括在内附加字段:
LOAD
*
,if([Event Type] = 'PO',date(MonthStart([EvtDt.Date Code]-15), 'YYYY-MMM'),if([Event Type] = 'WO',date(MonthStart([EvtDt.Date Code]-50), 'YYYY-MMM'), if([Event Type] = 'BFT PLAN',date(MonthStart([EvtDt.Date Code]), 'YYYY-MMM')))) as [My New Field]
INLINE [
Event Type,EvtDt.Date Code,Value
PO,01/01/2013,1234
WO,01/01/2013,1234
BFT PLAN,01/01/2013,1234
];