Rough impl of IGNORE NULLS for window functions

Started by Joe Banafatoover 14 years ago2 messages
#1Joe Banafato
joe@banafato.com

Hi all,

I wrote an implementation of last_value that ignores null values,
effectively achieving the behavior of last_value(<exp> ignore nulls).
The code is up on BitBucket [1]https://bitbucket.org/joeb/pg-window-ignore-nulls/src for the moment.  Thoughts:

* This isn't on the TODO [2]https://wiki.postgresql.org/wiki/Todo#Window_Functions.  Is anyone interested in getting this in
the language? I use this feature extensively and need it for an
Oracle port.
* I'd love to get a critique, especially on using WinSetMarkPosition.
* I have not extended the syntax (I simply called the function
last_value_ignore_nulls), and I hope to get some guidance on starting
that.

I'll be starting the other functions shortly.

Cheers,

Joe

[1]: https://bitbucket.org/joeb/pg-window-ignore-nulls/src
[2]: https://wiki.postgresql.org/wiki/Todo#Window_Functions

#2David Fetter
david@fetter.org
In reply to: Joe Banafato (#1)
Re: Rough impl of IGNORE NULLS for window functions

On Tue, Sep 13, 2011 at 04:18:48AM -0400, Joe Banafato wrote:

Hi all,

I wrote an implementation of last_value that ignores null values,
effectively achieving the behavior of last_value(<exp> ignore nulls).
The code is up on BitBucket [1] for the moment. �Thoughts:

Just in case of lossage on bitbucket, could you please send a patch
vs. git master to the list?

Cheers,
David (pretty excited about this feature).
--
David Fetter <david@fetter.org> http://fetter.org/
Phone: +1 415 235 3778 AIM: dfetter666 Yahoo!: dfetter
Skype: davidfetter XMPP: david.fetter@gmail.com
iCal: webcal://www.tripit.com/feed/ical/people/david74/tripit.ics

Remember to vote!
Consider donating to Postgres: http://www.postgresql.org/about/donate