paikpaik.log
로그인
paikpaik.log
로그인
MySQL, 테이블조인(join)
paikpaik
·
2023년 7월 16일
팔로우
0
mysql
0
DB, SQL(MySQL)
목록 보기
8/9
join
SQL에게 JOIN이란?
두 개 이상의 table들에 있는 데이터를 한 번에 조회하는 것.
여러 종류의 JOIN이 존재한다.
implicit join vs explicit join
implicit join
explicit join
join은 explicit join으로 쓰는게 좋다!
inner join vs outer join
두 테이블로 join을 해보려고 함.
inner join
inner는 생략가능
outer join
outer는 생략가능
LEFT OUTER JOIN
RIGHT OUTER JOIN
FULL OUTER JOIN (MySQL에서는 지원되지 않는 기능임! pgrsql에서는 가능)
equi join
equi join
join condition에서 = (equality comparator)를 사용하는 join
4가지 전부 equi join임
equi join에 대한 두 가지 시각
inner join outer join 상관없이 = 를 사용한 join이라면 equi join으로 보는 경우.
inner join으로 한정해서 = 를 사용한 경우에 equi join으로 보는 경우.
using
equi join을 사용하는데 중복 attribute가 있다면 using을 사용할 수 있음
using 사용 전
using 사용 후
USING
USING을 사용할 때 꼭 하나의 attribute만 넣을 필요는 없음. 중복되는 attributes를 다 넣으면 됨!
natural join
natural join
natural join은 중복되는 attributes가 using(attribute1,attribute2)이런식으로 동작하기 때문에 잘 확인해야 한다.
cross join
cross join
implicit cross join
explicit cross join
cross join @ MySQL
self join
self join
join을 사용한 예제
join example 1
ID가 1003인 부서에 속하는 임직원 중 리더를 제외한 부서원의 ID, 이름, 연봉을 알고 싶다.
join example 2
ID가 2001인 프로젝트에 참여한 임직원들의 이름과 직군과 소속 부서 이름을 알고 싶다.
출처 : 쉬운코드
paikpaik
매일 앞으로 나아가는 개발자
팔로우
이전 포스트
MySQL, NULL 주의 사항
다음 포스트
MySQL, grouping, aggregate function, ordering
0개의 댓글
댓글 작성