Functional Dependencies
Not every table has a lossless decomposition
E.g., the XYZ table could not be decomposed in this way.
Where "could not be decomposed" means: there is no lossless join decomposition.
XY = project(XYZ[X, Y])
XZ = project(XYZ[X, Z])
XYZ ⊂ join(XY, XZ)
Why?
Functional Dependencies
- BadAlbum has the functional dependency artist → artist_website
- LessBadAlbum has the functional dependency label → label_website
- XYZ has no functional dependencies that lead to a non-trivial lossless join decomposition
|