I am trying to understand how a OUTER UNION
$∪^✳$ works, and why it is only partially compatible.
I am aware this operation was created to take union of tuples from two relations if the relation are not type compatible (which I understand).
Examples of this operation will be great!
Asked By : orange
Answered By : Tegiri Nenashi
There are two flavors of outer union: with and without NULL
s. Google search readily exibits an example for NULL
s version. The cleaner version of relational algebra desn't allow NULL
s, and outer union is defined via De Morgan's law:
$ X \bigcup Y = \overline {\overline X \Join \overline Y} $
Date&Darwen call this operation $\blacktriangleleft OR \blacktriangleright$.
Given
R = [A B] 1 2 3 4
and
S = [B C] 4 5 6 7
both outer join variants agree that the result projected to common column B
should be {2,4,6}
. This is what is called inner union -- alternative way of generalizing standard relational algebra union operator. Now the problem is finding values of attributes A
and C
. Next, we match the values of the "middle column" with attributes A
and C
trying to leverage information in the relations R and S. In case of value B=2
we don't have matching value of C
. Likewise, for B=6
we don't have matching value of A
. Therefore, D&D $\blacktriangleleft OR \blacktriangleright$ operator fills the blanks in
[A B C] 1 2 3 4 5 6 7
with all the values from corresponding domain, while the NULL
version just blurts NULL
s.
Best Answer from StackOverflow
Question Source : http://cs.stackexchange.com/questions/6997
0 comments:
Post a Comment
Let us know your responses and feedback