| Oracle FAQ | Your Portal to the Oracle Knowledge Grid | |
Home -> Community -> Usenet -> comp.databases.theory -> Re: No exceptions?
paul c wrote:
> Bob Badour wrote:
>
>> paul c wrote: >> >>> paul c wrote: >>> >>>> Jon Heggland wrote: >>>> >>>>> paul c wrote: >>>>> >>>>>> Let me re-phrase my original question: Is there a logical flaw in >>>>>> substituting TABLE_DUM for x in the expression "x join y" when x >>>>>> is not >>>>>> in the catalogue? >>>>>> >>>>> >>>>> I don't know what precisely you mean by "logical flaw", so I'll pass >>>>> judgement. If something should be substituted for x (a "default >>>>> value", >>>>> so to speak), TABLE_DUM does seem the natural choice, though, as it >>>>> corresponds to false/zero in some sense. >>>>> ... >>> >>> I suppose my "logic", if I may call it that, went like this (at >>> evaluation time): >>> >>> 1) according to syntax, x must be a relation >> >> What about the relation 'x = true' ? Or rather 'x != false' ? >> >> >>> 2) according to the catalogue, there are no attributes for a relation >>> named x, so given that the syntax insists x is a relation, it must be >>> the same relation as either TABLE_DEE or TABLE_DUM >> >> Or it could be a boolean expression. If one treats 'x = 1' as a >> relation to handle restrict, then naturally x by itself is a boolean >> assertion. Is it not? >> ...
Exactly, 'x join y' states 'SELECT y WHERE x;' or 'SELECT x WHERE y' instead.
> One practical implication of TTM's definitions that I can think of is
> that evaluation of 'x <and> y' is not possible if x and y each have an
> attribute with the same name but different types
Any two values of differing most-specific-types are unequal. Thus, if x and y each have an attribute z where the types are different, the join will have cardinality zero and will have an attribute z with the most specific supertype of the z attributes in x and y. This might be the universal supertype.
, in other words closure
> isn't possible,
It is possible. See above. Received on Sun Jul 02 2006 - 16:24:19 CDT
![]() |
![]() |