Re: setting up a table relationship

From: Mag Gam <magawake(at)gmail(dot)com>
To: "Jean-Yves F(dot) Barbier" <12ukwn(at)gmail(dot)com>
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: setting up a table relationship
Date: 2010-06-26 22:22:19
Message-ID: AANLkTimyrC9CMDTx-wuf-PGdT6ZmAiUdDunTTQYkQWW0@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

thanks for the quick answer.

I have something very similar. Instead, I have

CREATE TABLE time (id SERIAL PRIMARY KEY,
task INTEGER NOT NULL REFERENCES task(id),
s timestamptz NOT null, --start
e timestamptz NOT null, --end
time TIMESTAMP NOT NULL --date );

But shouldn't time, s and e be unique because if I accidentally run
multiple inserts on the same day I would have duplicate copies of the
data? I would really like to avoid that.

On Sat, Jun 26, 2010 at 6:16 PM, Jean-Yves F. Barbier <12ukwn(at)gmail(dot)com> wrote:
> Le Sat, 26 Jun 2010 17:55:02 -0400,
> Mag Gam <magawake(at)gmail(dot)com> a écrit :
>
> ...
>> 2010/06/24
>> Task A:started at 3:30AM:ended 6:02AM
>> Task B:started at 4:30AM:ended 7:04AM
>> Task C:started at 8:45AM:ended 12:04PM
>> Task D:started at 7:30AM:ended 11:01AM
>>
>> I would like to do metric such as, "On 2010/06/25 what was the longest
>> task", "how does task B look for X number of days", etc..
>>
>> I setup 2 tables, task and t. Task is for the task and t is for the time.
>>
>> Now, I am getting confused on how to setup this relationship. This
>> should be a many-to-many relationship. Can anyone give me advise on
>> how to better organize this data?
>
> ?
>
> CREATE TABLE task (id SERIAL PRIMARY KEY,
>                   task  CHAR(1) NOT NULL);
>
> CREATE TABLE time (id SERIAL PRIMARY KEY,
>                   task INTEGER NOT NULL REFERENCES task(id),
>                   start_end BOOLEAN NOT NULL, -- True==start
>                   time TIMESTAMP NOT NULL);
>
> if you have huge mining and don't want to perform date/time extraction from
> a timestamp, you can separate this field in 2.
>
> --
> Maturity is only a short break in adolescence.
>                -- Jules Feiffer
>
> --
> Sent via pgsql-novice mailing list (pgsql-novice(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-novice
>

In response to

Browse pgsql-novice by date

  From Date Subject
Next Message Michael Wood 2010-06-26 23:38:38 Re: Disable autostart on Mac?
Previous Message Jean-Yves F. Barbier 2010-06-26 22:16:49 Re: setting up a table relationship