# Re: View updating in practice?

Date: Wed, 13 Nov 2002 12:08:48 -0800
Message-ID: <3DD2B150.E462DA41_at_oracle.com>

Mikito Harakiri wrote:

> "Jens Lechtenbörger <lechtej_at_uni-muenster.de> wrote in message news:<m28yzxhlih.fsf_at_pcwi1068.uni-muenster.de>...
> > > Relation A:
> > >
> > > ID VOICE FAX
> > > -- ----------- --------------
> > > 1 4150000000 4081111111
> > > 2 80012345672 6501234567
> > >
> > > select id, 'VOICE' phonetype, voice number
> > > from A
> > > union
> > > select id, 'FAX' phonetype, fax number from A
> > >
> > > What is the method to invert it?
> >
> > It should be a join of (a) the projection of the view on id and
> > voice_number and (b) the projection of the view on id and
> > fax_number, i.e., something like this:
> >
> > select v1.id, v1.voice_number, v2.fax_number
> > from
> > (select id, voice_number from view) as v1,
> > (select id, fax_number from view) as v2
> > where v1.id=v2.id

> Note that cartesian product and union are dual operations <...> Your result, where inverse view
> has CP operation in it, is not surprising from that perspective.

Not quite. According to the corrected table of dualities:

1. Intersection is dual to Union and
2. Cartesian Product is dual to Naisetrac Product

Also note that when we solve the equations we don't use the dual operations. We use inverse operations. For example,

x + 3 = 5

is solved by applying minus

(x + 3) -3 = 5 - 3 Received on Wed Nov 13 2002 - 21:08:48 CET

Original text of this message