작성
·
244
0
안녕하세요
[ Group by 실습 01 ] 강의를 듣다가 실습 문제에서 결과 값이 이해가 되지 않아 질문드립니다.
-- 부서명 SALES와 RESEARCH 소속 직원별로 과거부터 현재까지 모든 급여를 취합한 평균 급여(with 절로 풀기)
수업 듣기 전, 위의 문제에서 with 절 안의 테이블을 만들려고 아래와 같이 적었습니다.
(같은 테이블 결과값이 나오는지 확인만 하려고 select 뒤에 구체적인 컬럼을 적지 않고 * 를 적었습니다.)
[수업 전 작성 답안 & 결과 테이블]
select *
from hr.emp a
join hr.dept b on a.deptno = b.deptno
join hr.emp_salary_hist c on a.empno = c.empno
where b.dname in('SAELS','RESEARCH');
--> dname 에 research 만 나타납니다.
[강의 예시 답안]
select *
from hr.dept a
join hr.emp b on a.deptno = b.deptno
join hr.emp_salary_hist c on b.empno = c.empno
where a.dname in('SALES','RESEARCH');
--> 나와야 하는 결과값 잘 나옴.
위의 제가 적은 답안에서 어떤점이 잘못 되었는지 도무지 보이지않아서 질문드립니다.
join 만 적을시 inner join 이 적용되므로, 집합 레벨은 모든 테이블의 join 될 수 있는 모든 컬럼값 끼리 붙을 텐데, 그러면 어떤 테이블을 먼저 적던지 순서에 상관 없이 같은 결과 값이 나와야 하는 것 아닌가요?
inner join 할 시에 염두해 두어야 하는 순서나 유의점이 있을까요?
답변 부탁드립니다.
감사합니다.
아,,,, 감사합니다 ㅜㅜ