¿En qué caso utilizamos producto cartesiano y unión natural en álgebra relacional?

Natural-Join (más simple) es un reemplazo para el producto cartesiano (largo y complejo).

En álgebra relacional, hay algunas operaciones fundamentales como

1. Seleccionar operación (unario)

2. Operación de proyección (unario)

3. Operación de cambio de nombre (unario)

4. Unión (binario)

5. Diferencia de conjunto (binario)

6. Producto cartesiano (binario)

Estas operaciones fundamentales son suficientes para expresar cualquier consulta. Pero el problema es que si solo decidimos usar operaciones fundamentales, algunas consultas se volverán complejas y largas. Por lo tanto, se agregan algunas operaciones adicionales para simplificar las consultas. Como:

1. Unión natural

2. Conjunto-intersección

3. División

Ahora, el trabajo de la unión natural es simplificar las consultas que requieren un producto cartesiano. Así que creo que deberíamos evitar el producto cartesiano y más bien usar la unión natural.

Ejemplo:

Si consideramos este esquema:

Una consulta de muestra:

“Encuentre los nombres de todos los clientes que tienen un préstamo en el banco, junto con el número de préstamo y el monto del préstamo”

Solución con producto cartesiano :

Π nombre-cliente, número de préstamo, cantidad ( σ prestatario.número de préstamo = préstamo.número de préstamo (prestatario × préstamo) )

Solución con Natural-Join:

Π nombre del cliente, número de préstamo, cantidad (prestatario préstamo)