Re: Using table name in column for joining - Mailing list pgsql-general

From Antonio Goméz Soto
Subject Re: Using table name in column for joining
Date
Msg-id 4B439970.7050604@gmail.com
Whole thread Raw
In response to Re: Using table name in column for joining  (sabrina miller <sabrina.miller@gmail.com>)
List 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@gmail.com <mailto:gryzman@gmail.com>>
>
>     On Tue, Jan 5, 2010 at 3:30 PM, Antonio Goméz Soto
>     <antonio.gomez.soto@gmail.com <mailto:antonio.gomez.soto@gmail.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@postgresql.org
>     <mailto:pgsql-general@postgresql.org>)
>     To make changes to your subscription:
>     http://www.postgresql.org/mailpref/pgsql-general
>
>


pgsql-general by date:

Previous
From: Frank Joerdens
Date:
Subject: Re: reason for default PGSTAT_ACTIVITY_SIZE
Next
From: Guillaume Lelarge
Date:
Subject: Re: reason for default PGSTAT_ACTIVITY_SIZE