본문 바로가기

Mysql/Mysql 기초

mysql 기초 set(합집합, 교집합, 차집합)

반응형

 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