티스토리 뷰

정보보안

[정보보안] SQL - Union

SweetDev 2021. 2. 4. 02:32

SQL Injection에서 엄청 많이 사용되는 'union' 연산자이다. 

union 연산자를 쓰면, 여러개의 SELECT문의 결과를 합집합해서 보여줄 수 있다. 

 

  • 각각의 SELECT 문은 컬럼 갯수가 같아야 한다. 
  • 컬럼의 데이터 타입이 비슷하거나 같아야 한다. 
  • 컬럼의 순서가 같아야 한다. 
SELECT column_name(s) FROM table1
UNION
SELECT column_name(s) FROM table2;

만약 결과를 중복해서 보여주고 싶다면, 

SELECT column_name(s) FROM table1
UNION ALL
SELECT column_name(s) FROM table2;

UNION ALL을 사용하면 된다. 

 

SELECT City, Country FROM Customers
WHERE Country='Germany'
UNION
SELECT City, Country FROM Suppliers
WHERE Country='Germany'
ORDER BY City;

이렇게 WHERE , ORDER BY와 같이 사용할 수도 있다. 

 

출처: www.w3schools.com/sql/sql_union.asp

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함