set
두 select 문을 통해 얻어온 결과를 집합 연산을 통해 하나의 결과로 만드는 것을 set이라고 부른다
합집합 교집합 차집함 등 집합 연산을 할 수 있다
집합 연산을 하기 위해서는 두 select무을 통해 가져오는 컬럼이 같아야 한다
합집합
두 select문의 결과를 모두 포함하는 최종 결과를 반환한다
UNION 중복되는 데이터를 하나만 가져온다
UNION ALL 중복되는 데이터도 모두 가져온다
-- set
-- 두 select 문을 통해 얻어온 결과를 집합 연산을 통해 하나의 결과로 만드는 것을 set이라고 부른다
-- 합집합 교집합 차집함 등 집합 연산을 할 수 있따
-- 집합 연산을 하기 위해서는 두 select무을 통해 가져오는 컬럼이 같아야 한다
-- 합집합
-- 두 select문의 결과를 모두 포함하는 최종 결과를 반환한다
-- UNION 중복되는 데이터를 하나만 가져온다
-- UNION ALL 중복되는 데이터도 모두 가져온다
select * from titles;
select emp_no from titles where title = "Senior Staff";
select emp_no from titles where title = "Staff";
select emp_no from titles where title = "Senior Staff"
union
select emp_no from titles where title = "Staff";
select emp_no from titles where title = "Senior Staff"
union all
select emp_no from titles where title = "Staff";
교집합
교집합은 따로 제공되는 메소드가 없으며 join을 활용한다
- 교집합은 join을 활용한다
select a.emp_no from titles a, titles b where a.emp_no = b.emp_no and a.title = "Senior Staff" and b.title = "Staff";
차집합
차집합은 서브쿼리를 활용한다
-- 차집합은 서브쿼리를 이용한다
select emp_no
from titles
where title ='Staff' and
emp_no not in(select emp_no from titles where title='Senior Staff');
'Mysql > Mysql 기초' 카테고리의 다른 글
mysql 서브쿼리 (0) | 2020.07.09 |
---|---|
mysql join (0) | 2020.07.09 |
mysql 그룹함수 (0) | 2020.07.09 |
mysql 기초 날짜 함수 (0) | 2020.07.09 |
mysql 문자열함수 (0) | 2020.07.09 |