Operación Diferencia
Tipo: Binaria
Sintaxis:
Tabla1 - Tabla2
Descripción: Lista las tuplas que están en Tabla1 y NO ESTÁN en Tabla2.
Ejemplo: Para el ejemplo de la diferencia supongamos las siguientes dos tablas:
Todos_Los_Estudiantes |
Cedula PK Nombre Dirección Edad |
Estudiantes_Becados |
Cedula PK Nombre Edad Raza Telefono |
Se supone que en la primera tabla están absolutamente todos los estudiantes, becados y no becados. Y en la segunda solamente están los datos de los estudiantes que están becados.
Listar los datos de los estudiantes que no están becados.
Para resolver esta consulta se puede utilizar la operación diferencia. De tal manera que se escribiría:
Todos_Los_Estudiantes - Estudiantes_Becados
Si se analiza bien el resultado de la anterior operación, todas las tuplas que están en Todos_Los_Estudiantes y NO están en Estudiantes_Becados, no daría como resultado lo que se está pidiendo. De hecho:
Todos_Los_Estudiantes-Estudiantes_Becados = Todos_Los_Estudiantes
lo cual no es lo que se está pidiendo. Es decir, cuando en una diferencia, las dos tablas no cumplen con las dos condiciones que se tienen que cumplir en la unión, la consulta funciona pero no da el resultado esperado.
Por lo tanto, mientras en la unión las dos condiciones expuestas se TIENEN que cumplir para que la consulte funcione, en la diferencia las dos condiciones se DEBEN cumplir para lograr el resultado esperado.
De tal manera que para hacer la diferencia entre dos tablas, se procede, como en la unión, a proyectar los atributos comunes. Entonces, la solución a la anterior consulta es la siguiente:
Π cedula, nombre, edad (Todos_Los_Estudiantes) - Π cedula, nombre, edad (Estudiantes_Becados)