Re: Are there terms for these?

From: Marshall Spight <marshall.spight_at_gmail.com>
Date: 24 Aug 2005 22:42:43 -0700
Message-ID: <1124948563.371765.170140_at_g44g2000cwa.googlegroups.com>


Kenneth Downs wrote:
> Marshall Spight wrote:
>
> > Kenneth Downs wrote:
> >> Given two tables that are not UNION compatible, it seems there are ways
> >> to UNION them anyway.
> >>
> >> Method 1, Intersect their headers. The resulting header is used to
> >> project
> >> both tables and now those projections are union compatible. What would
> >> this be called?
> >
> > We've been discussing this a lot. There was even a thead I started
> > about
> > a month ago called (IIRC) What would this operator be called?
>
> This is scary, how did I miss it?

Here it is:

"What to call this operator?"
http://groups.google.com/group/comp.databases.theory/browse_thread/thread/7a855309c23c73eb/1aad918848dd35fd

In the opening post on that thread, I ask what we should call these generalized union operations. I actually speak directly in terms of the TTM <AND> and <OR> because I thought that'd be more familiar to a wider readership. However, what I really had in mind was the exact operator you described above, in which the values that have to be "made up" are more null-like than infinite-like. Specifically, I've been going with a 2VL in which certain attributes may take on the empty set, as a replacement for null.

Since then, (specifically as a result of that thread) I've become aware of Vadim Tropashko's paper "Relational Algebra as Non-Distributive Lattice" in which he describes the *inner* union, and manifold ways it's mathematically interesting. I'm not so interested in outer union any more.

> > Since then, I've been going with "inner union" or "generalized union".
>
> What's weird is that normally somebody jumps in and points out that these
> ideas were first worked out in Sanskrit thousands of years ago and we
> should RTFM. How can it be that no terms exist and you are making them
> just now?

I would like to take this opportunity to apologize on a personal level for not heaping abuse on you in the manner to which you have become acustomed.

> >> Method 2, Union their headers. The resulting header is used to UNION
> >> both tables, providing NULL or empty values where a column exists in one
> >> but not
> >> the other. What would this be called, a FULL OUTER UNION (ha ha)?
> >
> > I'm calling it "outer union."
>
> I suppose there really would be a LEFT OUTER UNION and a RIGHT OUTER UNION,
> though. Left would be all columns from table 1 plus common columns 1 and
> 2, or:
>
> (L n R) U L (that 'n' is supposed to be intersection)
>
> and RIGHT OUTER UNION would be all columns from right plus common columns,
> or:
>
> (L n R) U L

I'm not so happy with the idea of asymmetric operators lately. They seem like a sign of bad design.

Anyway, read the thread and the Tropashko paper. It just might blow your mind; it blew mine.

Marshall Received on Thu Aug 25 2005 - 07:42:43 CEST

Original text of this message