如何解决在 qlikview 中填充缺失值
我正在尝试使用 peek
函数填充日期之间的缺失值。我使用了以下代码,但仍然无法获得我正在寻找的结果
Table:
LOAD * INLINE [
Date,Article,Quantity
01/02/2021,A,10
03/02/2021,20
06/02/2021,B,30
07/02/2021,C,40
];
Join(Table)
LOAD
Date(MinDate+IterNO ()-1) as Date
While
(MinDate+IterNO ()-1) <= Num(MaxDate -1)
;
LOAD
Min(Date) as MinDate,Max(Date) As MaxDate
Resident
Table
;
Join(Table)
Load
If( Len(Quantity) = 0,peek('newQuantity'),Quantity) as newQuantity
Resident
Table
;
非常感谢您的帮助
解决方法
我尝试了一种解决方法
SET ThousandSep=' ';
SET DecimalSep=',';
SET MoneyThousandSep=' ';
SET MoneyDecimalSep=',';
SET MoneyFormat='# ##0,00 €;-# ##0,00 €';
SET TimeFormat='hh:mm:ss';
SET DateFormat='DD/MM/YYYY';
SET TimestampFormat='DD/MM/YYYY hh:mm:ss[.fff]';
SET MonthNames='janv.;févr.;mars;avr.;mai;juin;juil.;août;sept.;oct.;nov.;déc.';
SET DayNames='lun.;mar.;mer.;jeu.;ven.;sam.;dim.';
A:
LOAD *,Date(Date) as Date1
;
LOAD * INLINE [
Date,Article,Quantity
01/02/2021,A,10
01/02/2021,B,12
03/02/2021,20
06/02/2021,30
07/02/2021,C,40
];
//required for generating calendar for all the months
maxMin:
LOAD Date(Max(Date1)) as maxdate,Date(min(Date1)) as mindate
Resident A;
LET vStartDate = num(Peek('mindate','maxMin'));
LET vEndDate = num(Peek('maxdate','maxMin'));
//Calendar to generate all the months
Calendar:
LOAD
Date($(vStartDate) + RangeSum(Peek('RowNum'),1) - 1) AS Date,RangeSum(Peek('RowNum'),1) AS RowNum
AutoGenerate vEndDate - vStartDate + 1;
///Joining the Existing date with the calendar generated months
B:
LOAD
Date(max(Date)) as Date,RowNo() as rowno
Resident Calendar
Group By Date
;
left Join
LOAD Date,Quantity
Resident A;
//Final table
NoConcatenate
C:
LOAD Date,rowno,if(IsNull(Article),Peek(Article),Article) as Article,if(IsNull(Quantity),Peek(Quantity),Quantity) as Quantity
Resident B
Order by rowno;
DROP Tables A,Calendar,maxMin;
问题是我需要为每个日期显示所有具有先前数量的文章(如果不是零),程序仅使用最后一篇文章和数量填充缺失的日期,如下所示: [![结果][1]][1] 我正在寻找的日期是 2021 年 1 月 2 日:
日期 | 文章 | 数量 |
---|---|---|
01/02/2021 | A | 10 |
01/02/2021 | B | 12 |
01/02/2021 | C | 0 |
02/02/2021 | A | 10 |
02/02/2021 | B | 12 |
02/02/2021 | C | 0 |
03/02/2021 | A | 20 |
03/02/2021 | B | 12 |
03/02/2021 | C | 0 |
基本上我需要按文章聚合或我只是不知道该怎么做,谢谢您的帮助。 [1]:https://i.stack.imgur.com/VJEJi.png
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。