(조인 조건 어디에 명시하는지에 따라)
SELECT P.PLAYER_NAME AS 선수명, P.BACK_NO AS 등번호, P.TEAM_ID AS 팀코드, T.TEAM_NAME AS 팀명, T_REGION_NAME AS 연고지
FROM PLAYER P, TEAM T
WHERE P.BACK_NO > 10
AND T.TEAM_ID = P.TEAM_ID;
# 1
SELECT ENAME, JOB, SAL, GRADE
FROM EMP, SALGRADE
WHERE SAL >= LOSAL
AND SAL <= HISAL;
# 2
SELECT ENAME, JOB, SAL, GRADE
FROM EMP, SALGRADE
WHERE SAL BETWEEN LOSAL AND HISAL;
SELECT P.PLAYER_NAME 선수명, T.TEAM_NAME 팀명, S.STADIUM_NAME 구장명
FROM PLAYER P, TEAM T, STADIUM S
WHERE P.TEAM_ID = T.TEAM_ID
AND T.STADIUM_ID = S.STADIUM_ID
ORDER BY 선수명;
SELECT S.STADIUM_NAME, S.STADIUM_ID, S.SEAT_COUNT, T.TEAM_NAME
FROM STADIUM S INNER JOIN TEAM T
ON T.STADIUM_ID = S.STADIUM_ID;
# TEAM 테이블에 STADIUM_ID 컬럼 있음.
SELECT S.STADIUM_NAME, STADIUM_ID, S.SEAT_COUNT, T.TEAM_NAME
FROM STADIUM S NATURAL JOIN TEAM T;
# TEAM 테이블에 STADIUM_ID 컬럼 있음.
SELECT *
FROM STADIUM S NATURAL JOIN TEAM T;
SELECT *
FROM STADIUM S INNER JOIN TEAM T
ON T.STADIUM_ID = S.STADIUM_ID;
SELECT *
FROM STADIUM S JOIN TEAM T
USING(기준컬럼1, 기준컬럼2, ...);
SELECT *
FROM STADIUM S JOIN TEAM T
ON (SUBSTR(T.REGION_NAME, 1, 2) = SUBSTR(S.STADIUM_NAME, 1, 2));
SELECT *
FROM STADIUM S JOIN TEAM T
ON (SUBSTR(T.REGION_NAME, 1, 2) = SUBSTR(S.STADIUM_NAME, 1, 2))
WHERE S.SEAT_COUNT>40000;
SELECT P.PLAYER_NAME, T.TEAM_NAME, S.STADIUM_NAME
FROM PLAYER P JOIN TEAM T
ON P.TEAM_ID = T.TEAM_ID
JOIN STADIUM S
ON T.STADIUM_ID = S.STADIUM_ID;
SELECT P.PLAYER_NAME, T.TEAM_NAME
FROM PLAYER P CROSS JOIN TEAM T
ORDER BY P.PLAYER_NAME;
SELECT S.STADIUM_NAME, S.STADIUM_ID, S.SEAT_COUNT, T.TEAM_NAME
FROM STADIUM S, TEAM T
WHERE T.STADIUM_ID(+) = S.STADIUM_ID;
# 기준 테이블은 STADIUM S
SELECT S.STADIUM_NAME, S.STADIUM_ID, S.SEAT_COUNT, T.TEAM_NAME
FROM STADIUM S LEFT OUTER JOIN TEAM T
ON T.STADIUM_ID = S.STADIUM_ID;