DB/ORACLE
ORACLE) JOIN, 서브쿼리 - 다수의 테이블을 하나의 데이터로 출력하기
code_learner
2022. 10. 2. 03:19
2개 이상의 테이블의 데이터를 하나의 ROW로 합쳐 출력하고 싶을 때 사용하는 방법으로는 JOIN과 서브쿼리가 있다.
[사용할 테이블]
[JOIN]
-INNER JOIN
SELECT MO.DETAIL_SEQ, MO.MENU_SEQ, MO.QUANTITY,
ME.MENU_SEQ,ME.MENU_NM,ME.UP_MENU_SEQ,ME.MENU_PRICE
FROM MENU_ORDER MO, MENU ME
WHERE MO.MENU_SEQ = ME.MENU_SEQ;
-OUTER JOIN
SELECT MO.DETAIL_SEQ, MO.MENU_SEQ, MO.QUANTITY,
ME.MENU_SEQ,ME.MENU_NM,ME.UP_MENU_SEQ,ME.MENU_PRICE
FROM MENU_ORDER MO, MENU ME
WHERE MO.MENU_SEQ(+) = ME.MENU_SEQ;
[서브쿼리]
SELECT MO.DETAIL_SEQ, MO.MENU_SEQ, MO.QUANTITY,
(SELECT ME.MENU_NM FROM MENU ME WHERE MO.MENU_SEQ = ME.MENU_SEQ) AS MENU_NM,
(SELECT ME.UP_MENU_SEQ FROM MENU ME WHERE MO.MENU_SEQ = ME.MENU_SEQ) AS UP_MENU_SEQ
FROM MENU_ORDER MO;