-
[MySQL] UNION, UNION ALL 함수SQL 2021. 8. 19. 13:35
http://tcpschool.com/mysql/mysql_multipleTable_union
UNION
UNION은 여러 개의 SELECT 문의 결과를 하나의 테이블이나 결과 집합으로 표현할 때 사용한다.
이때 각각의 SELECT 문으로 선택된 필드의 개수, 타입, 순서가 모두 같아야 한다.
예제
역의 이름의 길이가 가장 짧은 것과 가장 긴 것 하나씩 출력한다. 이때 동일한 길이의 역 이름이 있다면 알파벳 순으로 앞서는 것을 출력한다.
/* 이름이 가장 짧은 역 찾기 */ ( select CITY, length(CITY) from STATION order by length(CITY), CITY limit 1 ) union /* 이름이 가장 긴 역 찾기 */ ( select CITY, length(CITY) from STATION order by length(CITY) desc, CITY limit 1 );
UNION ALL
UNION은 DISTINCT 키워드를 따로 명시하지 않아도 기본적으로 중복되는 레코드를 제거한다.
따라서 이렇게 중복되는 레코드까지 모두 출력하고 싶다면, ALL 키워드를 사용하자.
'SQL' 카테고리의 다른 글
[MySQL] IF 함수를 이용한 BST SELECT (0) 2021.08.23 [MySQL] CONCAT, LOWER, UPPER 함수 (0) 2021.08.23 [MySQL] CASE WHEN ~ THEN ~ END로 pivot table 변환 (0) 2021.08.22 [MySQL] SUBSTR 함수를 이용한 문자열 추출 (0) 2021.08.20 [MySQL] MOD 함수를 이용한 짝수/홀수 행 SELECT (0) 2021.08.19