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

Reply via email to