Computer Science/Database
W3Schools SQL | #25 SQL UNION 연산자
토마토.
2022. 10. 28. 12:39
SQL UNION Operator
The SQL UNION Operator
두 개 이상의 result set을 결합하는 데 사용하는 연산자
- 조건 1. column 개수가 같아야 한다.
- 조건 2. 각 columns는 비슷한 data type이어야 한다.
- 조건 3. SELECT에서 같은 order로 명령되어야 한다.
UNION Syntax
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;
UNION ALL Syntax
원래 UNION은 distinct value만 return한다.
만약 duplicate value도 허용하고 싶다면, UNION ALL을 이용할 것
SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;
SQL UNION Example
SELECT City FROM Customers
UNION
SELECT City FROM Suppliers
ORDER BY City;
결과에서는 City column에 Customer의 결과와 Suppliers의 결과가 합쳐져서 나온다.
SQL UNION ALL Example
SELECT CIty FROM Customers
UNION ALL
SELECT City FROM Suppliers
ORDER BY City;
SQL UNION With WHERE
SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
SQL UNION ALL With WHERE
SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION ALL
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;
Another UNION Example
SELECT 'Customer' AS Type, CountactName, City, Country
FROM Customers
UNION
SELECT 'Supplier', ContactName, City, Country
FROM Suppliers;
결과는 이렇게 나온다.
즉, Type이라는 column을 새로 만들고, Customer에서 추출하는 내용을 'Customer'라는 값으로 저장해주는 것