본문으로 바로가기

[Mysql] UNION과 UNION ALL의 차이

category Database/Mysql 2020. 8. 28. 21:48
728x90
반응형

오늘은 UNION에 대해 알아보겠습니다.

UNION은 여러개의 SQL문을 합쳐 하나의 SQL문으로 만들어줍니다.

쉽게 말하면 두 쿼리의 합집합을 만들어줍니다.

UNION과 UNION ALL은 UNION 기본의 역할을 하지만 차이점이 있습니다.

UNION은 두 쿼리의 결과에서 중복되는 값을 삭제하여 나타냅니다.

UNION ALL은 두 쿼리의 결과에서 중복되는 값을 모두 보여줍니다.

이것으로만 봤을 때, 속도는 UNION ALL이 더 빠릅니다.

중복체크를 하냐 마냐에 대한 처리 속도 때문입니다.

또한, 여기서 중복처리 하는 기준을 알아보겠습니다.

일반적으로 키, 칼럼 등을 생각할 수 있지만, 모든 컬럼 값들 자체가 중복체크의 기준이됩니다.

UNION은 생각보다 속도가 느리기 때문이 많이 사용하지 않는 구문입니다.

사용할 필요가 있다면 UNION ALL을 사용하되, 칼럼은 최소한으로 줄여야됩니다.

728x90
반응형