Thank you. I've modified the code to read: DELETE from tracker WHERE tracker.episode_id = 277 AND tracker.date_of_service BETWEEN '09/12/2005'::date - interval '1 day' AND '10/20/2005'::date + interval '1 day' And got: SELECT * from tracker where tracker.episode_id = 277; 53716 | 277 | 27 | 10/27/2005 53717 | 277 | 28 | 10/28/2005 53720 | 277 | 29 | 11/05/2005 53721 | 277 | 30 | 11/06/2005 Which suggest to me that it's a true between (exclusive). I really appreciate your help. <<Tim makes note of *really* useful BETWEEN conditional.>> -----Original Message----- From: pgsql-general-owner@xxxxxxxxxxxxxx [mailto:pgsql-general-owner@xxxxxxxxxxxxxx] On Behalf Of Michael Glaesemann Sent: Wednesday, December 07, 2005 7:21 PM To: Tim Vadnais Cc: pgsql-general@xxxxxxxxxxxxxx Subject: Re: [GENERAL] deleting records is failing On Dec 8, 2005, at 12:13 , Tim Vadnais wrote: > I have a set of records spanning several dates, and I want to > delete some > records within a specific date range. For example, I have a record > for each > day from Sept 1 through Nov 1, and I want to delete the records for > Sept 21 > through 10/20 and leave all the rest. > > Here is my query that's deleting all the records for the episode > DELETE FROM tracker WHERE tracker.episode_id = 238 AND > ( rug_tracker.date_of_service < '09/12/2005' > OR rug_tracker.date_of_service > '10/20/2005' ); DELETE FROM tracker WHERE episode_id = 238 AND date_of_service BETWEEN '2005-09-21'::date and '2005-10-20'::date; Note that between is inclusive, so if you don't want Sept 21 (or is it Sept 12? you've used one in your explanation and another in your SQL) and Oct 20, you can use BETWEEN '2005-09-22' AND '2005-10-19' instead. Michael Glaesemann grzm myrealbox com ---------------------------(end of broadcast)--------------------------- TIP 6: explain analyze is your friend