Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Cláusula UNION | Subconsultas Anidadas
SQL Intermedio
course content

Contenido del Curso

SQL Intermedio

SQL Intermedio

1. Agrupamiento
2. Subconsultas Anidadas
3. Uniendo Tablas
4. DDL y DML en SQL

book
Cláusula UNION

Great job mastering inner queries! We've caught the attention of a client who needs SQL queries. Before we dive into JOINs, let's learn about the UNION clause, which is essential for combining multiple tables.

Here are some important things to know about using UNION:

  1. Columns Count and Order: All queries combined with UNION must have the same number of columns in the same order;

  2. Data Types: The columns in each query must have compatible data types;

  3. Unique Rows: By default, UNION removes duplicate rows. Use UNION ALL if you want to keep duplicates.

Repasemos brevemente los puntos clave al trabajar con UNION:

  1. Número y orden de las columnas: Todas las consultas combinadas con UNION deben tener el mismo número de columnas, y estas columnas deben estar en el mismo orden;

  2. Tipos de datos: Los tipos de datos de las columnas correspondientes en cada consulta deben ser compatibles;

  3. Filas únicas: Por defecto, UNION elimina las filas duplicadas. Para incluir duplicados, se utiliza UNION ALL.

You can see that this table has similarities with the employees table. Using the UNION clause, we can combine these two tables to, for example, see a list of all names and surnames of employees and contractors involved in the company.

To do this, we'll use the UNION clause:

12345678
(SELECT employee_id as id, first_name, last_name FROM employees) UNION (SELECT contractor_id as id, first_name, last_name FROM contractors) ORDER BY id
copy

Let's break down what's happening:

We have two queries that each return three columns with the same data types. We want to see the Id, first_name, and last_name of everyone in the company. We also renamed the Id column so both queries have the same column names.

Then, we use UNION to combine the results of these queries, removing duplicates (though there are none here).

Finally, we sort the results by Id using ORDER BY.

Note

We're sorting by Id, which is a common column in both tables.

After using UNION, we get a "single large query" that we can further manipulate with clauses like ORDER BY.

Vamos a desglosar brevemente lo que está sucediendo aquí:

Tenemos 2 consultas que devuelven 3 columnas con tipos de datos idénticos para cada columna.

Es decir, queremos ver el Id, first_name y last_name de todos los participantes de la empresa. También le pusimos un alias al Id para que las columnas en ambas consultas SELECT tengan los mismos nombres.

Luego, usamos la cláusula UNION para combinar el resultado de estas dos consultas SELECT con eliminación de duplicados (aunque no tengamos duplicados).

Después de eso, utilizamos la cláusula ORDER BY para ordenar por Id.

Nota

Estamos ordenando por el Id, que es una columna compartida por ambas tablas.

Para entender mejor, necesitas darte cuenta de que después de combinar con la cláusula UNION, obtenemos "una gran consulta" con la que luego podemos trabajar utilizando diferentes cláusulas; en nuestro caso, es la cláusula ORDER BY.

123456789
SELECT id, first_name, last_name FROM ( SELECT employee_id AS id, first_name, last_name FROM employees UNION SELECT contractor_id AS id, first_name, last_name FROM contractors ) AS combined WHERE first_name = 'Jane'
copy

Using a subquery in the FROM section gives us more flexibility! It might seem tricky at first, but mastering this will make writing complex queries much easier.

1. What columns are required when using the UNION clause in SQL?

2. ¿Qué columnas son necesarias al utilizar la cláusula UNION en SQL?

What columns are required when using the `UNION` clause in SQL?

What columns are required when using the UNION clause in SQL?

Selecciona la respuesta correcta

¿Qué columnas son necesarias al utilizar la cláusula `UNION` en SQL?

¿Qué columnas son necesarias al utilizar la cláusula UNION en SQL?

Selecciona la respuesta correcta

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 5
We're sorry to hear that something went wrong. What happened?
some-alt