La diferencia clave entre Inner Join y Natural Join es que Inner Join proporciona el resultado en función de los datos coincidentes de acuerdo con la condición de igualdad especificada en la consulta, mientras que Natural Join proporciona el resultado en función de la columna con el mismo nombre y mismo tipo de datos presente en las tablas que se van a unir.
DBMS permite almacenar, recuperar y manipular datos fácilmente. Almacena datos en forma de tablas. Cada tabla consta de filas y columnas. Las filas representan cada entidad mientras que las columnas representan los atributos. Suponga una base de datos de estudiantes. Cada fila representa a un estudiante. Las columnas representan los atributos como id, nombre, grado, edad. Un DBMS es una colección de tablas y cada tabla está relacionada mediante restricciones como claves foráneas. A veces no es suficiente usar una sola tabla. Hay situaciones que requieren el uso de varias tablas. Para combinar dos tablas, al menos una columna debe ser común. La combinación de tablas se llama join.
¿Qué es la unión interna?
El ejemplo de una unión interna es el siguiente. A continuación se muestra la tabla de estudiantes.
La tabla de información_estudiante es la siguiente.
Para realizar la combinación interna, debe haber al menos una coincidencia entre ambas tablas. Los id 1, 2, 3 son comunes a ambas tablas. Por lo tanto, es posible realizar una unión interna.
Figura 01: Unión SQL
La consulta INNER JOIN para unir estas dos tablas es la siguiente.
SELECCIONARdel alumno
INTER JOIN student_info DONDE estudiante.id=estudiante_info.id;
Ejecutar el comando SQL anterior generará la siguiente tabla.
¿Qué es la unión natural?
El ejemplo de una unión natural es el siguiente. A continuación se muestra la tabla de estudiantes.
La tabla de información_estudiante es la siguiente.
Para realizar una unión natural, debe haber una columna con el mismo nombre y el mismo tipo de datos. La columna id es la misma para ambas tablas. Por lo tanto, es posible unir naturalmente ambas tablas.
La consulta NATURAL JOIN para unir estas dos tablas es la siguiente.
SELECCIONARdel estudiante NATURAL JOIN student_info;
Ejecutar el comando SQL anterior generará la siguiente tabla.
¿Cuál es la relación entre la unión interna y la unión natural?
La unión natural es un tipo de unión interna
¿Cuál es la diferencia entre unión interna y unión natural?
La combinación interna proporciona el resultado en función de los datos coincidentes según la condición de igualdad especificada en la consulta, mientras que la combinación natural proporciona el resultado en función de la columna con el mismo nombre y el mismo tipo de datos presentes en las tablas que se unirán. Además, la sintaxis de la unión interna y la unión natural son diferentes.
Cuando la tabla 1 consiste en id, nombre y la tabla 2 consiste en id y ciudad, la unión interna dará la tabla resultante con filas coincidentes. Tendrá id, nombre, nuevamente id y ciudad. Por otro lado, en combinación natural, dará la tabla resultante con filas coincidentes con columnas id, nombre, ciudad.
Resumen: unión interna frente a unión natural
La diferencia clave entre la combinación interna y la combinación natural es que la combinación interna proporciona el resultado en función de los datos coincidentes de acuerdo con la condición de igualdad especificada en la consulta SQL, mientras que la combinación natural proporciona el resultado en función de la columna con el mismo nombre y el mismo tipo de datos presentes en las tablas que se unirán.