keeping last 30 entries of a log table - Mailing list pgsql-sql

From Jeff Frost
Subject keeping last 30 entries of a log table
Date
Msg-id Pine.LNX.4.64.0606161924550.27250@glacier.frostconsultingllc.com
Whole thread Raw
Responses Re: keeping last 30 entries of a log table
Re: keeping last 30 entries of a log table
List pgsql-sql
I need to write a function which inserts a log entry in a log table and only 
keeps the last 30 records.  I was thinking of using a subquery similar to the 
following:

insert into log (account_id, message) values (1, 'this is a test);
delete from log where account_id = 1 and id not in ( select id from log  where account_id = 1 order by timestamp desc
limit30);
 

I'm wondering if there is a more performance oriented method of doing the 
delete that I'm not thinking of.

-- 
Jeff Frost, Owner     <jeff@frostconsultingllc.com>
Frost Consulting, LLC     http://www.frostconsultingllc.com/
Phone: 650-780-7908    FAX: 650-649-1954


pgsql-sql by date:

Previous
From: PFC
Date:
Subject: Re: sessions and prepared statements
Next
From: "sathish kumar shanmugavelu"
Date:
Subject: Re: concurrency problem