From: | Ragnar Hafstað <gnari(at)simnet(dot)is> |
---|---|
To: | lists(at)benjamindsmith(dot)com |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: Checking for schedule conflicts |
Date: | 2005-03-12 10:13:33 |
Message-ID: | 1110622413.28805.13.camel@localhost.localdomain |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Sat, 2005-03-12 at 00:13 -0800, Benjamin Smith wrote:
> Given the tables defined below, what's the easiest way to check for schedule
> conflicts?
>
> So far, the only way I've come up with is to create a huge, multi-dimensional
> array in PHP, with a data element for every minute of all time taken up by
> all events, and then check for any of these minutes to be set as I go through
> all the records. (ugh!)
>
> But, how could I do this in the database?
>
> But I'd like to see something like
> "select count(*) FROM events, sched
> WHERE sched.date=$date
> AND events.id=sched.events_id
> ...
> GROUP BY date, start<finish and finish<start
> HAVING count(*) >1 "
>
> And here's where I get stumped. You can't group by start or end because we
> need to check if they OVERLAP any other records on the same date.
>
> Ideas?
use the OVERLAPS operator ?
http://www.postgresql.org/docs/8.0/interactive/functions-datetime.html
gnari
From | Date | Subject | |
---|---|---|---|
Next Message | Leif B. Kristensen | 2005-03-12 10:30:03 | Partial or incomplete dates |
Previous Message | Ragnar Hafstað | 2005-03-12 09:35:46 | Re: [JDBC] MS Access to PostgreSQL |