T-SQL: unir tablas

El servidor MS SQL JoinsLa cláusula se utiliza para combinar registros de dos o más tablas en una base de datos. Un JOIN es un medio para combinar campos de dos tablas utilizando valores comunes a cada uno.

Considere las dos tablas siguientes, (a) La tabla CLIENTES es la siguiente:

ID  NAME       AGE       ADDRESS             SALARY 
1   Ramesh     32        Ahmedabad           2000.00 
2   Khilan     25        Delhi               1500.00 
3   kaushik    23        Kota                2000.00 
4   Chaitali   25        Mumbai              6500.00 
5   Hardik     27        Bhopal              8500.00 
6   Komal      22        MP                  4500.00 
7   Muffy      24        Indore              10000.00

(b) Otra tabla es PEDIDOS como sigue:

OID  DATE                       CUSTOMER_ID        AMOUNT 
100  2009-10-08 00:00:00.000    3                  1500.00 
101  2009-11-20 00:00:00.000    2                  1560.00 
102  2009-10-08 00:00:00.000    3                  3000.00 
103  2008-05-20 00:00:00.000    4                  2060.00

Unamos estas dos tablas en nuestra declaración SELECT de la siguiente manera:

SELECT ID, NAME, AGE, AMOUNT 
   FROM CUSTOMERS, ORDERS 
   WHERE  CUSTOMERS.ID = ORDERS.CUSTOMER_ID 
OR 
SELECT A.ID, A.NAME, A.AGE, B.AMOUNT 
   FROM CUSTOMERS A inner join  ORDERS B on A.ID = B.Customer_ID

El comando anterior producirá la siguiente salida.

ID   NAME      AGE    AMOUNT 
2    Khilan    25     1560.00 
3    kaushik   23     1500.00 
3    kaushik   23     3000.00 
4    Chaitali  25     2060.00

Se nota que la combinación se realiza en la cláusula WHERE. Se pueden usar varios operadores para unir tablas, como =, <,>, <>, <=,> =,! =, BETWEEN, LIKE y NOT; todos pueden usarse para unir tablas. Sin embargo, el operador más común es el símbolo igual.

Tipos de unión de MS SQL Server -

Hay diferentes tipos de combinaciones disponibles en MS SQL Server:

  • INNER JOIN - Devuelve filas cuando hay una coincidencia en ambas tablas.

  • LEFT JOIN - Devuelve todas las filas de la tabla de la izquierda, incluso si no hay coincidencias en la tabla de la derecha.

  • RIGHT JOIN - Devuelve todas las filas de la tabla de la derecha, incluso si no hay coincidencias en la tabla de la izquierda.

  • FULL JOIN - Devuelve filas cuando hay una coincidencia en una de las tablas.

  • SELF JOIN - Se utiliza para unir una tabla consigo misma como si fueran dos tablas, cambiando temporalmente el nombre de al menos una tabla en la declaración de MS SQL Server.

  • CARTESIAN JOIN - Devuelve el producto cartesiano de los conjuntos de registros de las dos o más tablas unidas.