Re: querying the age of a row

From: "codeWarrior" <gpatnude(at)hotmail(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: querying the age of a row
Date: 2007-06-07 18:14:14
Message-ID: f49hls$1s2f$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Interesting issue --

I have usually solved this by adding a specific field to each table with a
default timestamp of NOW()...

When you:

CREATE TABLE tbl (

blah...
blah....

create_dt TIMESTAMP NOT NULL DEFAULT NOW()

);

each and every record now has a timestamp of exactly when the row was
created -- then it is a simple query to select, update, or delete WHERE
create_dt < (NOW() - interval '1 day')...

HTH....

""Lonni J Friedman"" <netllama(at)gmail(dot)com> wrote in message
news:7c1574a90706071047x773c7085yf0d9f100dbca51da(at)mail(dot)gmail(dot)com(dot)(dot)(dot)
> Greetings,
> I've got a PostgreSQL-8.1.x database on a Linux box. I have a need to
> determine which rows in a specific table are less than 24 hours old.
> I've tried (and failed) to do this with the age() function. From what
> I can tell, age() only has granularity down to days, and seems to
> assume that anything matching today's date is less than 24 hours old,
> even if there are rows from yesterday's date that existed less than 24
> hours ago.
>
> I've googled on this off and on for a few days, and have come up dry.
> At any rate, is there a reliable way of querying a table for rows
> which have existed for a specific period of time?
>
> --
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> L. Friedman netllama(at)gmail(dot)com
> LlamaLand http://netllama.linux-sxs.org
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Scott Marlowe 2007-06-07 18:14:57 Re: should the postgres user have a password?
Previous Message Scott Marlowe 2007-06-07 18:12:00 Re: subtract a day from the NOW function