getting the values of a complex attribute - Mailing list pgsql-sql

From Nicolas Caillaud
Subject getting the values of a complex attribute
Date
Msg-id 357B0EA3.F0A1E65F@mail.dotcom.fr
Whole thread Raw
List pgsql-sql
Hi *

I'm new to SQL, and being in the Linux world, I began with Postgresql.
One day, I wrote the following :

- create table person (name text);
- create table book(name text, author person);

simple, isn't it ? ;()

Now :

- insert into person (name) values ('nicolas');
INSERT 691704 1
- insert into person (name) values ('julien');
INSERT 691705 1

now, to fill book :
- insert into book (name, author) values ('my book', 691704);
INSERT 691706 1

ok, but cant i write anything but the oid of the person record i want to
insert ? (this is my first question)

Next :
insert into book (name,author) values ('other ', 691705);
INSERT 691707

OK, right now, i want te get all books written by 'nicolas', i want to write

select * from book where author.name = 'nicolas';

ERROR:  author: Table does not exist.

select * from book where author = 691706;

ERROR:  There is no operator '=' for types 'person' and 'int4'
        You will either have to retype this query using an explicit cast,
        or you will have to define the operator using CREATE OPERATOR

Now my second question : what can i do to get (in a simpler manner) all the books written by 'nicolas' ?

I think that writing an operator just to do that is a little bit complicated :-((

Thank you if someone got the answer .......

--
Nicolas Caillaud
Nicolas.Caillaud@mail.dotcom.fr




pgsql-sql by date:

Previous
From: Marin D
Date:
Subject: Re: [SQL] problems with CAST :-{
Next
From: "Jose' Soares Da Silva"
Date:
Subject: Re: [SQL] problems with CAST :-{