UNION
- 여러 쿼리문들을 합쳐서 하나의 쿼리문으로 만들어주는 방법
중복 값 제거- 중복된 값을 제거하는 연산이 추가로 수행되기 때문에 UNION ALL보다 속도가 느리다.
UnionALL- 여러 쿼리문들을 합쳐서 하나의 쿼리문으로 만들어주는 방법이다.
중복 값 포함사용 방법
컬럼 명이 동일해야 함
- 컬럼 별로
데이터 타입이 동일해야 함
출력 걸럼의 개수가 동일해야 함- 출력할 컬럼명을 차례대로 적고,
알리어스(AS)를 통해컬럼 명을 맞춰준다.SELECT A AS one, B AS two FROM TABLE_A UNION (또는 UNION ALL) SELECT C AS one, D AS two FROM TABLE_B ;
JOIN과UNION의 차이점
JOIN: 수평결합 = 새로운 열로 결합한다.UNION: 수직 결합 = 새로운 행으로 결합한다.
UNION+GROUP BYSELECT DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE, PRODUCT_ID, USER_ID, SALES_AMOUNT FROM ONLINE_SALE WHERE MONTH(SALES_DATE) = 3 UNION SELECT DATE_FORMAT(SALES_DATE, '%Y-%m-%d') AS SALES_DATE, PRODUCT_ID, NULL AS USER_ID, SALES_AMOUNT FROM OFFLINE_SALE WHERE MONTH(SALES_DATE) = 3 ORDER BY SALES_DATE, PRODUCT_ID, USER_ID;