Re: object algebra
Date: Thu, 26 Feb 2004 03:44:31 GMT
Message-ID: <zYd%b.59944$4o.81521_at_attbi_s52>
"Mikito Harakiri" <mikharakiri_at_iahu.com> wrote in message news:zW4%b.13$OB.143_at_news.oracle.com...
>
> "Marshall Spight" <mspight_at_dnai.com> wrote in message
> news:hXY_b.56566$4o.75850_at_attbi_s52...
> >
> > Here's my first cut. I reserve the right to change my design later. No
> > nulls were used. I have to admit your test data made me feel a bit silly.
> >
> > create table EX76 (subject varchar(80), relator varchar(80), object
> varchar(80));
> > insert into EX76 values ('obeys', 'isa', 'relator');
> > insert into EX76 values ('god', 'isa', 'thing');
> > insert into EX76 values ('god', 'equals', 'god');
> > insert into EX76 values ('it', 'is', 'obeys');
> > insert into EX76 values ('force', 'isa', 'thing');
> > insert into EX76 values ('army', 'isa', 'force');
> > insert into EX76 values ('church', 'isa', 'thing');
> > insert into EX76 values ('trinity', 'isa', 'church');
> > insert into EX76 values ('person', 'isa', 'thing');
> > insert into EX76 values ('john', 'isa', 'person');
> > insert into EX76 values ('mary', 'isa', 'person');
> > insert into EX76 values ('luke', 'isa', 'person');
> > insert into EX76 values ('age', 'isa', 'thing');
> > insert into EX76 values ('35', 'isa', 'age');
> > insert into EX76 values ('john', 'is', '35');
> > insert into EX76 values ('weight', 'isa', 'thing');
> > insert into EX76 values ('130', 'isa', 'weight');
> > insert into EX76 values ('mary', 'is', '130');
> > insert into EX76 values ('color', 'isa', 'thing');
> > insert into EX76 values ('red', 'isa', 'color');
> > insert into EX76 values ('luke', 'is', 'red');
> > insert into EX76 values ('dog', 'isa', 'thing');
> > insert into EX76 values ('fido', 'isa', 'dog');
> > insert into EX76 values ('computer', 'isa', 'thing');
> > insert into EX76 values ('laptop1', 'isa', 'computer');
> > insert into EX76 values ('army', 'obeys', 'god');
> > insert into EX76 values ('trinity', 'obeys', 'god');
> > insert into EX76 values ('john', 'obeys', 'army');
> > insert into EX76 values ('mary', 'obeys', 'army');
> > insert into EX76 values ('mary', 'obeys', 'trinity');
> > insert into EX76 values ('luke', 'obeys', 'trinity');
> > insert into EX76 values ('laptop1', 'obeys', 'john');
> > insert into EX76 values ('laptop1', 'obeys', 'mary');
> > insert into EX76 values ('fido', 'obeys', 'john');
> > insert into EX76 values ('fido', 'obeys', 'mary');
> > insert into EX76 values ('fido', 'obeys', 'luke');
>
> And now please write a query that returns an aggregate age of all persons.
> In this schema with SQL, or with Neo's school science fair project.
Here's the results from a test run I did:
Compare the length and clarity of the above SQL with Neo's pseudocode.
Marshall Received on Thu Feb 26 2004 - 04:44:31 CET