From: | Antonio Goméz Soto <antonio(dot)gomez(dot)soto(at)gmail(dot)com> |
---|---|
To: | sabrina miller <sabrina(dot)miller(at)gmail(dot)com> |
Cc: | Grzegorz Jaśkiewicz <gryzman(at)gmail(dot)com>, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Using table name in column for joining |
Date: | 2010-01-05 19:56:32 |
Message-ID: | 4B439970.7050604@gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Op 05-01-10 18:00, sabrina miller schreef:
> You can also have inheritance from animal, in such case you can have
> partitioned different animals in different tables with their special
> attributes in it.
>
> then you will have:
>
>
> create table animal(
> id serial,
> name varchar(20),
> age integer
> );
>
> create table elephant
> (some_attr_that_only_have_
> elephants varchar(20)
> )
> INHERITS (animal);
>
This is PostgreSQL-specific isn't it?
I'm a bit afraid to use brand-specific constructs.
Antonio
> create table monkey
> (some_attr_that_only_have_monkey varchar(20)
> )
> INHERITS (animal);
>
> insert into elephant (name, age, some_attr_that_only_have_elephants)
> values ('sophie',15,'lorem');
>
> insert into monkey (name, age, some_attr_that_only_have_monkey)
> values ('lory',3,'impsu');
>
> You can look for diferents animals like this:
>
> select name <http://animal.name/> from animal;
> select name <http://animal.name/> from elephant;
> select name <http://animal.name/> from monkey;
>
> I hope it helps.
>
>
> 2010/1/5 Grzegorz Jaśkiewicz <gryzman(at)gmail(dot)com <mailto:gryzman(at)gmail(dot)com>>
>
> On Tue, Jan 5, 2010 at 3:30 PM, Antonio Goméz Soto
> <antonio(dot)gomez(dot)soto(at)gmail(dot)com <mailto:antonio(dot)gomez(dot)soto(at)gmail(dot)com>>
> wrote:
> > Hello,
> >
> > I have a column in a table that contains the name of another table,
> > and the id in that table.
> >
> > I would like to use this in a join statement. Is that possible?
>
> not possible I'm afraid.
>
> But have a look at concept of inheritance for something that might
> suit you. Or just store everything in one table, but add new id to
> each row. That is what other half of the world uses.
>
> Also, when writing queries like that, consider using aliases for table
> name, for instance:
>
> select a.id <http://a.id> from animals a;
>
> makes life easier.
>
> hth
>
> --
> GJ
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org
> <mailto:pgsql-general(at)postgresql(dot)org>)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | Guillaume Lelarge | 2010-01-05 20:00:34 | Re: reason for default PGSTAT_ACTIVITY_SIZE |
Previous Message | Roman Neuhauser | 2010-01-05 19:52:33 | Re: set-level update fails with unique constraint violation |