(Database : Basic-16) UNION

Posted by : at

Category : Database


복수의 테이블을 다루어 보자

-- 커리어 평균 연봉이 3000000 이상인 선수 playerID
SELECT playerID, AVG(salary)
FROM salaries
GROUP BY playerID
HAVING AVG(salary) >= 3000000

-- 12월에 태어난 playerID
SELECT playerID, birthMonth
FROM players
WHERE birthMonth = 12

-- 평균 연봉이 3000000이거나 12월에 태어난 선수
-- 위 두 결과를 합치는걸 원한다 -> UNION
SELECT playerID
FROM salaries
GROUP BY playerID
HAVING AVG(salary) >= 3000000
UNION
SELECT playerID
FROM players
WHERE birthMonth = 12
-- 단, 중복은 제외된다

UNION ALL -- 중복을 제외하고 싶지않다면 ALL을 넣자

About Taehyung Kim

안녕하세요? 8년차 현업 C++ 개발자 김태형이라고 합니다. 😁 C/C++을 사랑하며 다양한 사람과의 협업을 즐깁니다. ☕ 꾸준한 자기개발을 미덕이라 생각하며 노력중이며, 제가 얻은 지식을 홈페이지에 정리 중입니다. 좀 더 상세한 제 이력서 혹은 Private 프로젝트 접근 권한을 원하신다면 메일주세요. 😎

Star
Useful Links