xxxxxxxxxx
Combines the results from 2 or more SELECT statements and returns only
distinct values.
Example: Returns the cities from the events and subscribers tables.
SELECT city FROM events
UNION
SELECT city from subscribers;
xxxxxxxxxx
-- UNION: distinct values (slower)
SELECT emp_name AS name from employees
UNION
SELECT cust_name AS name from customers;
-- UNION ALL: keeps duplicates (faster)
SELECT emp_name AS name from employees
UNION ALL
SELECT cust_name AS name from customers;
xxxxxxxxxx
SELECT
A.ID, SUM(A.COUNTS) AS COUNT_TOTAL
FROM
(
SELECT X AS ID, COUNT(*) AS COUNTS FROM TABLE1 GROUP BY X
UNION ALL
SELECT Y AS ID, COUNT(*) AS COUNTS FROM TABLE1 GROUP BY Y
) A
GROUP BY A.ID
ORDER BY A.ID;
xxxxxxxxxx
SQL> SELECT ID, NAME, AMOUNT, DATE
FROM CUSTOMERS
LEFT JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID
UNION
SELECT ID, NAME, AMOUNT, DATE
FROM CUSTOMERS
RIGHT JOIN ORDERS
ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID;
xxxxxxxxxx
#Syntax to execute UNION in SQL
SELECT columnName(s) FROM table1
UNION
SELECT columnName(s) FROM table2;
union sql query
xxxxxxxxxx
select eventos.nombre, instituciones.nombre
FROM instituciones
JOIN evento_institucion ON evento_institucion.institucion_id = instituciones.id
JOIN eventos ON eventos.id = evento_institucion.evento_id
where eventos.id = 1
UNION
select inscripciones.codigo, eventos.nombre from inscripciones
JOIN eventos ON inscripciones.evento_id = eventos.id
where inscripciones.id = 1;
xxxxxxxxxx
UNION:
COMBINES THE RESULT OF 2 QUERY AND
REMOVES DUPLICATE ROWS AND
SORTS BY FIRST COLUMN