首页 > 代码库 > QlikView显示所选时间前一年的数据

QlikView显示所选时间前一年的数据

客户常常提出这种需求,当用户选择某一时间时。图表中显示所选时间之前一年的数据。以下是我的方法。如有不当,请多不吝赐教:

 

数据准备例如以下所看到的:

SalesData:
LOAD
	Num(ID) as ID,
	Date(Date) as Date,
	Month,
	Num(Year) as Year,
	Num(Sales) as Sales
Inline [
ID, Date, Month, Year, Sales
1, 2012-1-1, 2012-1, 2012, 20
2, 2012-1-1, 2012-2, 2012, 21
3, 2012-1-1, 2012-3, 2012, 23
4, 2013-1-1, 2013-1, 2013, 34
5, 2013-2-1, 2013-2, 2013, 35
6, 2013-3-1, 2013-3, 2013, 46
7, 2014-1-1, 2014-1, 2014, 27
8, 2014-2-1, 2014-2, 2014, 30
9, 2014-3-1, 2014-3, 2014, 49
];


新建图表:

技术分享

 

将Month作为维度,如图所看到的:

技术分享

 

在表达式那个tab中新建一个Expression 例如以下所看到的:

技术分享

 

Sales表达式例如以下:

=Sum({$<
	Date={‘>$(=Date(Max(Date)-365))<=$(=Date(Max(Date)))‘}
>}Sales)


点击确定,然后新建一个Date列表,例如以下图所看到的,假如什么日期都不选,Sales图表默认显示近期一年的数据:

技术分享

假如选择一个时间,Sales图表将会显示所选日期之前一年的数据。例如以下图所看到的,因为选择了2014-1-1,Sale图表显示了2014-1-1号之前一年的数据。

技术分享

 

总结:上面Sales表达式证明了QlikView中能够实现">=","<="。 如有疑问。欢迎留言!

QlikView显示所选时间前一年的数据