2018-10-12 15:37:13 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								title: SQL Union Operator
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								localeTitle: Operador SQL Union
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								---
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## Operador SQL Union
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								### Descripción
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Para esta guía, analizaremos la sección Operador UNION de la declaración SQL.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								El operador UNION se utiliza para combinar los resultados de varias declaraciones de selección en un conjunto de resultados.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Las declaraciones de SQL deben tener el mismo número de columnas en su declaración de selección.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								### Ejemplo básico
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Declaración SQL
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```sql
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SELECT 'aaaaa' 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 UNION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 SELECT 'bbbbbbbbb'; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Salida
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-08-10 18:35:22 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
									
										
										
										
											2018-10-12 15:37:13 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								+-----------+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 | aaaaa     | 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 +-----------+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 | aaaaa     | 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 | bbbbbbbbb | 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 +-----------+ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 2 rows in set (0.00 sec) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								### Ejemplo usando las tablas de los estudiantes.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Declaración SQL
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```sql
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SELECT StudentID, FullName FROM student WHERE studentID BETWEEN 1 AND 5 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 UNION 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 SELECT studentID, studentEmailAddr FROM `student-contact-info`  WHERE studentID BETWEEN 7 AND 8; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Salida
							 
						 
					
						
							
								
									
										
										
										
											2019-08-10 18:35:22 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								+ ----------- + -------------------------------- +
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| StudentID | Nombre completo |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								+ ----------- + -------------------------------- +
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 1 | Monique Davis |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 2 | Teri Gutierrez |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 3 | Spencer Pautier |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 4 | Louis Ramsey |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 5 | Alvin Greene |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 7 | Maximo.Smith@freeCodeCamp .org |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								| 8 | Michael.Roach@freeCodeCamp .ort |
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								+ ----------- + -------------------------------- +
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								7 filas en conjunto (0,00 seg)
							 
						 
					
						
							
								
									
										
										
										
											2018-10-12 15:37:13 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								## SQL UNION ALL Operator 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 The UNION ALL operator is an extension to UNION operator where it should result you a A+B of rows in the ouptput assuming A and B is your input, in simple terms UNION ALL doesn't deduplicate. 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 ### Basic Syntax 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								 SQL Statement 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
									
										
										
										
											2019-08-10 18:35:22 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								### Union All
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Se usa la cláusula UNION ALL cuando se desea que si un registro de SQL A es el mismo del SQL B no se muestre en uno solo:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Si corremos el siguiente Query con union el resultado será:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SELECT CustomerName FROM Customers
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								WHERE City IN ('Paris','London')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								AND  customername = 'Around the Horn'
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								union
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SELECT CustomerName FROM Customers
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								WHERE City IN ('Paris','London')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								AND  customername = 'Around the Horn';
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Number of Records: 1
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								CustomerName
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Around the Horn
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Pero si corremos el mismo Query con UNION ALL el resultado no eliminará la columna repetida:
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SELECT CustomerName FROM Customers
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								WHERE City IN ('Paris','London')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								AND  customername = 'Around the Horn'
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								union all
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SELECT CustomerName FROM Customers
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								WHERE City IN ('Paris','London')
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Number of Records: 2
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								CustomerName
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Around the Horn
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Around the Horn
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								```
							 
						 
					
						
							
								
									
										
										
										
											2018-10-12 15:37:13 -04:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								sql SELECCIONAR expresión1, expresión2, ... expresión _n DE las tablas \[DÓNDE condiciones\] UNION TODO SELECCIONAR expresión1, expresión2, ... expresión_  n DE las tablas \[DÓNDE condiciones\]; \`\` \`
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Al igual que con todas estas cosas de SQL, hay MUCHO MÁS que lo que está en esta guía introductoria.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Espero que al menos esto te dé suficiente para empezar.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-08-10 18:35:22 -05:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Consulte el manual de su administrador de base de datos y diviértase probando diferentes opciones usted mismo.
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								SQL para el union all se usó desde: https://www.w3schools.com/sql/trysql.asp?filename=trysql_op_in