Skip to content

Autocombinaciones

Las autocombinaciones en SQL son una forma de combinar filas de una tabla consigo misma basadas en una relación entre una o más columnas de la tabla. Las autocombinaciones se utilizan para recuperar datos de una tabla en una sola consulta.

En Microsoft SQL Server, las autocombinaciones se pueden realizar utilizando la cláusula JOIN y la tabla de autocombinación se puede referenciar utilizando un alias.

A modo de facilitar la comprensión de las autocombinaciones, utilizaremos las siguientes tablas:

Tabla Employees

EmployeeIDLastNameFirstName
1DavolioNancy
2FullerAndrew
3LeverlingJanet
4PeacockMargaret

Tabla Orders

OrderIDOrderDateEmployeeID
102481996-07-041
102491996-07-052
102501996-07-083
102511996-07-083

Autocombinación

Una autocombinación es una combinación de una tabla consigo misma. Las autocombinaciones se utilizan para recuperar datos de una tabla en una sola consulta. Las autocombinaciones se pueden realizar utilizando la cláusula JOIN y la tabla de autocombinación se puede referenciar utilizando un alias.

La sintaxis básica de una autocombinación es la siguiente:

SELECT column1, column2, ...
FROM table1 alias1
JOIN table1 alias2
ON alias1.column_name = alias2.column_name;

Por ejemplo, para realizar una autocombinación entre la tabla Employees utilizando la columna EmployeeID, se puede utilizar la siguiente consulta:

SELECT e1.LastName, e1.FirstName, e2.LastName, e2.FirstName
FROM Employees e1
JOIN Employees e2
ON e1.EmployeeID = e2.EmployeeID;

En esta consulta, estamos seleccionando los campos LastName y FirstName de la tabla Employees utilizando los alias e1 y e2. Luego, estamos combinando la tabla Employees consigo misma utilizando la columna EmployeeID.

Donde tenemos como resultado la siguiente tabla:

LastNameFirstNameLastNameFirstName
DavolioNancyDavolioNancy
FullerAndrewFullerAndrew
LeverlingJanetLeverlingJanet
PeacockMargaretPeacockMargaret

En esta tabla, cada fila representa una combinación de una fila de la tabla Employees con otra fila de la misma tabla utilizando la columna EmployeeID. Las autocombinaciones se utilizan para recuperar datos de una tabla en una sola consulta.

Las autocombinaciones son útiles cuando se necesita comparar datos de una tabla consigo misma o cuando se necesita recuperar datos relacionados de una tabla en una sola consulta. Las autocombinaciones se pueden realizar utilizando la cláusula JOIN y la tabla de autocombinación se puede referenciar utilizando un alias.

Referencias