Martijn van Oosterhout <kleptog@svana.org> writes:
> I think the reason it hasn't been done for general join conditions is
> because we havn't thought of an efficient algorithm.

Right, it's keeping track of the unmatched right-hand rows that's a
problem.

> However, I wonder if youre case couldn't be handled with a
> time-interval datatype such that you condition is merge-joinable on
> that type. I can't quite see it though...

Interesting thought.  The use of NULLs in this example is a pretty poor
representational choice --- the queries would get a lot simpler if you
used "exptime = INFINITY" to represent unexpired data.  That doesn't get
you all the way to a mergejoinable query though :-(

                        regards, tom lane

---------------------------(end of broadcast)---------------------------
TIP 4: Have you searched our list archives?

               http://archives.postgresql.org

Reply via email to