Freitag, März 25, 2011

LastNonEmpty

Chris Webb zeigt in seinem Blog eine recht performante Version einer LastNonEmpty-Operation, mit der man NULL-Werte durch den letzten gegebenen Wert einer Kennzahl überschreiben kann. Das entspricht also in etwa dem Ergebnis der analytischen Funktion LAST_VALUE in Oracle-SQL:

select t.*, last_value(id ignore nulls) over(order by salesdate ) lv_id
  from ...

SALESDATE          ID      LV_ID
---------- ---------- ----------
05.01.2009
12.01.2009
19.01.2009
26.01.2009
09.02.2009
16.02.2009
23.02.2009
02.03.2009
09.03.2009
23.03.2009
30.03.2009    9145280    9145280
06.04.2009               9145280
13.04.2009               9145280
11.05.2009               9145280
01.06.2009               9145280
22.06.2009               9145280
29.06.2009               9145280
06.07.2009               9145280
13.07.2009               9145280
27.07.2009               9145280
10.08.2009               9145280
17.08.2009               9145280
31.08.2009               9145280
14.09.2009               9145280
21.09.2009               9145280
05.10.2009               9145280
12.10.2009               9145280
19.10.2009               9145280
26.10.2009    9445280    9445280
02.11.2009               9445280
09.11.2009               9445280
16.11.2009               9445280
30.11.2009               9445280

Keine Kommentare:

Kommentar veröffentlichen