인라인 뷰 활용 인라인 뷰란? 2021.03.28 - [Sql] - 서브쿼리 서브쿼리 1. 다중 행 서브쿼리 서브쿼리의 결과가 2건 이상 반환 될 수 있다면 반드시 다중 행 비교 연산자와 함께 사용 해야 한다. 그렇지 않으면 sql 문은 오류를 반환한다. 연산자 내 용 IN (서브쿼리) 서 pakker.tistory.com 대부분 조인은 1:m 관계인 테이블끼리의 조인이다. 조인 결과는 m쪽 집합과 같은 단위가 되는데, 이를 다시 1쪽 집합 단위로 그룹핑 해야 한다면 m쪽 집합을 먼저 1쪽 단위로 그룹핑하고 나서 조인하는 것이 유리하다. 이유는 join 횟수를 줄여주기 때문인데, 그런 처리를 위해 인라인 뷰를 사용 할 수 있다. 2개의 테이블이 필요하다고 해서 무조건 join을 바로 하려고 하지 말고, ..
- equi : A,B 테이블에 둘다 존재해서 등가로 join이 가능한 경우 - non equi : A,B 테이블에 둘다 존재해서 등가로 join이 가능한 경우 - from 절의 Join 형태 1. inner join 2. natural join 3. using 조건절 4. on 조건절 5. cross join 6. outer join 1. inner join : default join : join 조건에서 동일한 값이 있는 행만 반환 : cross join, outer join과 같이 사용 할 수 없다. 2. natural join : inner join의 하위 개념 : 두 테이블간의 join 조건에서 동일한 이름을 갖는 모든 칼럼들에 대해 equi join을 수행함 : join이 되는 테이블의 데이터..
scalar subquery 쿼리 내장된 또다른 쿼리 블록을 서브쿼리라고 하는데, 그 중에서 함수처럼 한 레코드 당 정확히 하나의 값 만을 리턴하는 서브 쿼리를 'scalar subquery' 라고 한다. scalar subquery는 주로 select-list에서 사용되지만 몇가지 예외사항을 뺀다면 칼럼이 올 수 있는 대부분 위치에서 사용 가능하다. 아래 쿼리는 위치가 'CHICAGO' 인 부서만 대상으로 급여 수준을 집계 사원(emp) 테이블 전체를 다 읽어야 하는 비효율이 있다. select d.deptno, d.dname, avg_sal, min_sal, max_sal from dept d right outer join (select deptno, avg(sal) avg_sal, min(sal) ..