in

Unión natural de MySQL – javatpoint

mysql natural join

Cuando combinamos filas de dos o más tablas basadas en una columna común entre ellas, esta operación se llama unir. Una combinación natural es un tipo de operación de combinación que crea una combinación implícita mediante la combinación de tablas basadas en columnas con el mismo nombre y tipo de datos.. Es similar a INNER o LEFT JOIN, pero no podemos usar la cláusula ON o USING con combinación natural como usamos en ellas.

Puntos para recordar:

  • No es necesario especificar los nombres de las columnas para unirse.
  • La tabla resultante siempre contiene columnas únicas.
  • Es posible realizar una combinación natural en más de dos tablas.
  • No use la cláusula ON.

Sintaxis:

La siguiente es una sintaxis básica para ilustrar la combinación natural:

En esta sintaxis, necesitamos especificar el nombres de columna que se incluirá en el conjunto de resultados después de la palabra clave SELECT. Si queremos seleccionar todas las columnas de ambas tablas, el * se utilizará el operador. A continuación, especificaremos el nombres de tablas para unirse después de la palabra clave FROM y escribir el UNIÓN NATURAL cláusula entre ellos.

Ejemplo de unión natural

Entendamos cómo funciona la unión natural en MySQL a través de ejemplos. Primero, crearemos dos tablas llamadas cliente y equilibrio utilizando las siguientes declaraciones:

A continuación, completaremos algunos registros en ambas tablas utilizando las siguientes declaraciones:

A continuación, ejecutaremos la instrucción SELECT para verificar los datos de la tabla:

Unión natural de MySQL

Ahora veremos la condición que cumple los criterios de unión natural. Podemos hacer esto examinando la estructura de la tabla usando el DESCRIBIR declaración. Vea la siguiente imagen:

Unión natural de MySQL

En esta imagen, podemos ver que ID de nombres de columna y cuenta y sus tipos de datos son los mismos que cumplen los criterios de unión natural. Por lo tanto, podemos usar la unión natural en ellos.

Ejecute la siguiente declaración para unir tablas usando la combinación natural:

Obtendremos el siguiente resultado:

Unión natural de MySQL

Podemos hacer el mismo trabajo con la ayuda de INNER JOIN usando la cláusula ON. Aquí está la consulta para explicar esta unión:

Después de una ejecución exitosa, obtendremos el mismo resultado que la combinación natural:

Unión natural de MySQL

Ahora usaremos

mysql> SELECT * FROM cliente NATURAL JOIN balance;

Supongamos que usamos el asterisco

en lugar de los nombres de las columnas, la combinación natural busca automáticamente los mismos nombres de columna y sus tipos de datos y los une internamente. Además, no muestra las columnas repetidas en la salida. Por lo tanto, deberíamos obtener el siguiente resultado después de ejecutar la declaración anterior:

Unión natural de MySQL

La cláusula WHERE se utiliza para devolver el resultado del filtro de la tabla. El siguiente ejemplo ilustra esto con la cláusula de unión natural: mysql> SELECCIONAR cliente. customer_name, bal.balance FROM customer AS cust NATURAL JOIN balance AS bal DONDE bal.balance> 50000;Obtendremos el siguiente resultado donde se muestra la información del cliente cuyo

el saldo de la cuenta es superior a 50000

.

Unión natural de MySQL

SELECCIONE FROM table_name1 NATURAL JOIN table_name2 NATURAL JOIN table_name3; Creemos otra tabla llamada

utilizando la siguiente declaración:

Luego, completaremos los registros en esta tabla:

INSERT INTO cust_info (cuenta, móvil, dirección) VALORES (1030, '598675498654', '777 Brockton Avenue, Abington MA 251'), (2035, '698853747888', '337 Russell St, Hadley MA 103'), (5564, '234456977555', '20 Soojian Dr, Leicester MA 154 '), (4534,' 987656789666 ',' 780 Lynnway, Lynn MA 19 '), (7648,' 756489372222 ',' 700 Oak Street, Brockton MA 23 ');

Podemos verificar los datos usando la instrucción SELECT. Vea la siguiente imagen:

Para unir tres tablas usando la combinación natural, necesitamos ejecutar la declaración de la siguiente manera:

mysql natural join8 SELECT C.customer_name, C.ccount, B.balance, I.mobile DEL cliente AS C NATURAL JOIN balance AS B NATURAL JOIN cust_info AS I;»/>

Dará el siguiente resultado. Aquí podemos ver que el número de cuenta está presente en las tres columnas, pero llegó solo una vez en la salida que cumple con los criterios de unión natural.

Unión natural de MySQL Diferencia entre la unión natural y la unión interna SN
Unión natural Unir internamente 1.
Une las tablas basándose en los mismos nombres de columna y sus tipos de datos. Se une a las tablas según el nombre de columna especificado en la cláusula ON de forma explícita. 2.
Siempre devuelve columnas únicas en el conjunto de resultados. Devuelve todos los atributos de ambas tablas junto con columnas duplicadas que coinciden con la condición de la cláusula ON. 3.
Si no hemos especificado ninguna condición en esta unión, devuelve los registros basados ​​en las columnas comunes. Devuelve solo las filas que existen en ambas tablas.
4. [column_names | *]
La sintaxis de la combinación natural se proporciona a continuación:
SELECCIONE
FROM table_name1
NATURAL JOIN table_name2; [column_names | *]
La sintaxis de la combinación interna se proporciona a continuación:
SELECCIONE
FROM table_name1

INNER JOIN table_name2

ON nombre_tabla1.nombre_columna = nombre_tabla2.nombre_columna;

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

02KVXS9x7SgrEcplXnkjVy1 1.1634561966.fit lim.size 1200x630

CEO de Intel: Esperamos recuperar a Apple como cliente de chips algún día

066xYM6XW9t00D5YUXvISMw 6.1569472434.fit lim.size 1200x630

Revisión del Creador de sitios web de Web.com | PCMag