El operador Union se usa para combinar un conjunto de resultados de dos o mas declaraciones SELECT
- Cada declaracion SELECT dentro de Union debe de tener el mismo numero de columnas
- Las columnas deben de tener tipos de datos similares
- Las columnas de cada declarion select deben esta en la misma orden
sintaxis de UNION
SELECT column_name(s) FROM table1 UNION SELECT column_name(s) FROM table2;
...
UNION ALL Sintaxis
El operador UNION solo seleciona valores distintos de forma predeterminada
Para permitir valores duplicados debese usar el operador UNION ALL
SELECT column_name(s) FROM table1 UNION ALL SELECT column_name(s) FROM table2;
NOTA Los nombres de las columnas en el conjunto de resultados suelen ser iguales a los nombres de las columnas en la primera declaracion SELECT
Ejemplo de UNION
La seguiente instrucion devuelve las ciudades(solo valores distintos) de la tabla clientes y Proveedores
SELECT City FROM Customers UNION SELECT City FROM Suppliers ORDER BY City;
NOTA Si agunos clientes o proveedores tienen la misma ciudad, cada ciudad sera enumerada solo una vez, porque UNION seleciona solo valores distintos
Si queres usar valores duplicados deberas usar la declaracion UNION ALL
Ejemplo de UNION ALL
La seguiente instrucion devuelve las ciudades (tambien duplicadas) de las tablas Clientes y proveedores
SELECT City FROM Customers UNION ALL SELECT City FROM Suppliers ORDER BY City;
Ejemplo de UNION con Where
se devuelven las ciudades alemanas (Valores distintos) de las tablas clientes y proveedores
SELECT City, Country FROM Customers WHERE Country='Germany' UNION SELECT City, Country FROM Suppliers WHERE Country='Germany' ORDER BY City;
Ejemplo de UNION ALL con Where
se devuelven las ciudades alemanas (tabien valores duplicados) de las tablas clientes y proveedores
SELECT City, Country FROM Customers WHERE Country='Germany' UNION ALL SELECT City, Country FROM Suppliers WHERE Country='Germany' ORDER BY City;
Ejemplo de UNION
Se devuelve todas las ciudades de clientes y proveedores
SELECT 'Customer' AS Type, ContactName, City, Country FROM Customers UNION SELECT 'Supplier', ContactName, City, Country FROM Suppliers;
0 Comentarios
Si desea contactar comigo, lo puede hacer atravez deste formulario gracias