GSI

--===============================================================--
-- OUTER JOIN
--===============================================================--
-- OUTER JOIN에는 LEFT, RIGHT, FULL 을 OUTER JOIN에 추가할 수 있다.

-- LEFT OUTER JOIN의 의미를 "왼쪽 테이블의 것은 모두 출력 되어야 한다.
-- 정도로 해석하면 된다.
select U.userid, U.name, B.prodName, U.addr, U.mobile1 + U.mobile2 as [연락처]
from userTbl U
 left outer join buyTbl B
  on U.userid = B.userid
 order by U.userid

/* 결과
userid   name       prodName addr 연락처
-------- ---------- -------- ---- -----------
AJH      안정환        책        강원   NULL
CJC      최진철        모니터      제주   0190000000
CJC      최진철        메모리      제주   0190000000
CJC      최진철        운동화      제주   0190000000
CJC      최진철        운동화      제주   0190000000
JJJ      조재진        NULL     충북   0193333333
KNI      김남일        NULL     경북   0166666666
LCS      이천수        모니터      인천   0114444444
LYP      이용표        NULL     전북   NULL
PJS      박지성        NULL     서울   0111111111
PJY      박주영        운동화      경기   0112222222
PJY      박주영        노트북      경기   0112222222
PJY      박주영        청바지      경기   0112222222
SJK      송종국        NULL     경기   0189999999
SKH      설기현        책        서울   0118888888
SKH      설기현        청바지      서울   0118888888
SKH      설기현        책        서울   0118888888
*/
-- 위와 같이 NULL의 정보도 같이 출력되는 것을 볼 수 있다.
-- left outer join 을 left join으로만 기록해도 된다.

--
select U.userid, U.name, B.prodName, U.addr, U.mobile1 + U.mobile2 as [연락처]
from buyTbl B
 right outer join userTbl U
  on U.userid = B.userid
 order by U.userid

-- 결과는 위와 같다.

--

Posted by gsi
: