JOIN
다른 테이블 간의 데이터를 연결시켜 사용하는 것
INNER 조인
일반적인 용도에 사용되며, 조건에 맞는 데이터를 두 테이블에서 모두 추출해낸다.
예)
1
2
3
4
|
select board.bnum, board.title, reply.rnum
from free_board as board join
free_reply as reply
on board.bnum = reply.bnum
| cs |
결과를 보면 게시물의 bnum과 댓글의 bnum이 같은 결과만 가져오는걸 알 수 있다.
LEFT/RIGHT 조인
기준 테이블을 설정해 준다.
FROM A LEFT/RIGHT JOIN B ON ~ 형태이며 레프트 조인은 A가 기준 라이트 조인은 B가 기준이 된다.
예)
1
2
3
4
|
select board.bnum, board.title, reply.rnum
from free_board as board left join
free_reply as reply
on board.bnum = reply.bnum
| cs |
결과를 보면 board가 기준의 되었기 때문에 조건에 맞지 않아 rnum이 없더라도 board의 bnum은 모두 불러오고 rnum이 없더라도 null 값으로 표기함을 알 수 있다.
INNER JOIN = JOIN
LEFT OUTER JOIN = LEFT JOIN
RIGHT OUTER JOIN = RIGHT JOIN
CROSS JOIN 조인
집합에서의 곱 개념이며, A={a, b, c} B={1,2,3,4} 이면
A CROSS JOIN은 (a,1)(a,2)(a,3)(a,4)(b,1)(b,2).....(c,3)(c,4)가 된다.
참고