1

次のSQLコマンドがあります。

SELECT X,Y,Z FROM A,B,C WHERE A.U=B.U AND A.V=C.V
ORDER BY X,Y

このクエリの関係代数式を書く必要があります。これまでのところ、私は次の場所にいます。

E =  (π{X,Y,Z}(S{X,Y} ( σ {A.B.U AND A.V=C.V} (A))) * 
     (π{X,Y,Z}(S{X,Y} ( σ {A.B.U AND A.V=C.V} (B))) * 
     (π{X,Y,Z}(S{X,Y} ( σ {A.B.U AND A.V=C.V} (C)))

これは正しいです ?A、B、Cの間にユニオンまたはデカルト積があるかどうかわかりませんか?

また、この式を最適な式に変換する必要があります。誰かが私にそれを行う方法のステップバイステップの例を教えてもらえますか?

ありがとう !

4

2 に答える 2

2

次のようになります。

τ(X,A),(Y,A)(πx,y,z(σa.u=b.u,a.v = c.v(A,B,C)))
于 2014-12-02T16:33:28.800 に答える
0

それは不可能。その理由は、関係代数では、結果セットに順序付けを適用できないためです。これは、のようなことをする方法がないことを意味しますorder by

于 2013-02-14T19:57:45.313 に答える