Re: unique index on variable time

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Michael Fuhr <mike(at)fuhr(dot)org>
Cc: "pgsql-general(at)list(dot)coretech(dot)ro" <pgsql-general(at)list(dot)coretech(dot)ro>, pgsql-general(at)postgresql(dot)org
Subject: Re: unique index on variable time
Date: 2006-04-16 20:51:14
Message-ID: 18746.1145220674@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Michael Fuhr <mike(at)fuhr(dot)org> writes:
> On Sun, Apr 16, 2006 at 07:07:11PM +0300, pgsql-general(at)list(dot)coretech(dot)ro wrote:
>> I am interested to know if I can define an unique index on a timestamp
>> column to reject values within one hour.

Perhaps
CREATE UNIQUE INDEX foo ON tab (date_trunc('hour', col));
It's not clear whether this does exactly what you wished for.

> Last month I posted an idea for enforcing unique constraints on
> date ranges by using a composite type and a custom comparison
> operator:
> http://archives.postgresql.org/pgsql-sql/2006-03/msg00055.php
> The warning about the code being only minimally tested still stands
> but maybe it'll give you some ideas.

I don't think that actually works; the problem is that its idea of
"equality" is not transitive, which is going to confuse btree terribly.

regards, tom lane

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Robert Treat 2006-04-16 23:06:33 Re: Google Summer of Code (Fix aggregate operators & Implement features such as Data Cubes and Skyline)
Previous Message Tom Lane 2006-04-16 20:32:25 Re: Query runs fast or slow