I have the following tables
R1(A, B, C) with 1.000 rows
R2(C, D, E) with 1.500 rows
R3(E, F) with 750 rows
where a bold letter denotes a primary key.
I need to estimate the number of rows of the natural join R1 |x| R2 |x| R3.
My textbook has proposed the following solution
The Natural join of R1, R2 and R3 will be the same no matter which way we join them (join is both associative and commutative). Size can be estimated using the strategy of first joining R1 and R2, and then joining the result with R3. Joining R1 with R2 will yield a table of at most 1.000 rows, since C is a key for R2. Likewise, joining that result with R3 will yield a table of at most 1.000 rows because E is a key for R3. Therefore the final relation will have at most 1.000 rows!
I would have thought that the final relation will have at most 750 rows, since R3 only has 750 rows.
Is the textbook solution incorrect, or am I missing something?