views of binary operations

From: Marshall <marshall.spight_at_gmail.com>
Date: 15 Jul 2006 19:36:08 -0700
Message-ID: <1153017368.456165.270950_at_m73g2000cwd.googlegroups.com>



Consider named views of binary operations on relations.

Given a relational operator "op" and relation variables A and B, and a declaration of:

r = A op B

the language evaluates the expression "A op B" and assigns the result to r.

However, if we declare this as a view, we do not evaluate A op B at the time of the declaration, but instead (re)evaluate A op B each time we make reference to r in later expressions.

r = view(A op B)

Is it the case that we want exactly the above, or might we want a more fine-grained control? Might we ever want

r = A op view(B)

In other words, the value of A at the time of the declaration and value of B at the time of evaluations of r? In which case, we then have four possibilities:

r = A op B
r = view(A) op B
r = A op view(B)
r = view(A) op view(B)

(Actual evaluation of the expression is deferred if either of
the operands is a view.)

In other words, when we have a view of a binary relation operation, are we necessarily creating a view of the entire expression, or are we making views of the operands?

(I am asking in the theoretical sense, and not about SQL per se,
although if current practice in SQL sheds light on the question, I am interested in that as well.)

Marshall Received on Sun Jul 16 2006 - 04:36:08 CEST

Original text of this message