create or replace function test1() returns text as $$  
 DECLARE
     mm varchar;
     ma bool;
 BEGIN
     SELECT into ma (DATE '2001-02-16', DATE '2001-12-21') OVERLAPS (DATE '2001-10-30', DATE '2002-10-30');
     if (ma) then
         select into mm  (age(DATE '2001-02-16', DATE '2001-12-21')-age(DATE '2001-10-30', DATE '2002-10-30'));
     end if;
     return mm;
 END; 
 $$ language plpgsql strict;
 select * from test1();
 vish
On 9/22/05, Tony Wasson <[email protected]> wrote: Given 2 date ranges, the overlaps functions returns TRUE or FALSE. I
want to find the # of days that are overlapping. Is there a "built in"
way to do this?  Should I just write a function to do it?
 For instance, this example overlaps, but I want to know how much does
it overlap?
SELECT (DATE '2001-02-16', DATE '2001-12-21') OVERLAPS
       (DATE '2001-10-30', DATE '2002-10-30');
Thanks in advance! 
Tony Wasson
---------------------------(end of broadcast)---------------------------
TIP 5: don't forget to increase your free space map settings