SQL 집합연산자 UNION ALL ( 데이터중복 합집합)
join 과 집합연산자의 차이점 join - 데이터를 양 옆으로 연결하여 출력 집합연산자 - 데이터를 위아래로 연결해서 출력 위아래로 연결할때 지켜주어야 할 조건 위쪽 쿼리문의 컬럼의 갯수와 아랫쪽 쿼리의 컬럼의 갯수가 동일해야한다. 위쪽 쿼리문의 컬럼의 데이터 타입과 아래쪽 쿼리문의 컬럼의 데이터 타입이 동일해야한다. 결과로 출력되는 컬럼명은 위쪽 쿼리의 컬럼명으로 출력 된다. order by 절은 맨 마지막 쿼리문 아래쪽에만 작성할 수 있습니다. UNION ALL 과 UNION 의 차이점 만약 A = {1,2,3,4,5}, B = {3,4,5,6,7} 이라면 UNION ALL 은 A + B = {1,2,3,4,5}+{3,4,5,6,7,} 이런식으로 중복데이터들도 다 함께 출력된다. 그래서 데이터들의 ..
SQL ANSI /ISO STANDARD JOIN - Left/ Right outer join
equi join 으로 join 되지 않는 데이터를 출력할때 쓰인다. on 절을 쓴다. 예제 65 이름, 직업,월급,부서위치 출력 (emp 에는 없고, dept 에는 존재하는 지역 boston 이출력 되어야한다. ) 1. (오라클 outer join 문법 사용) select e.ename, e.job, e.sal, d.loc from emp e , dept d where e.deptno (+) = d.deptno ; -> emp 테이블에 데이터가 부족한 것이므로 where 절의 조인문법에 부족한 쪽인 e.deptno 쪽에 (+) outer join 을 건다. 2. (1999 ansi join rigth outer join 문법 사용) select e.ename, e.job, e.sal, d.loc fro..
SQL Oracle Join - Self join 자기 자신과 조인
select e.ename as 사원 , e.job as 직업 , m.ename as 관리자 , m.job as 관리자_직업 from emp e, emp m where e.mgr = m.empno ; ——————→조인문법 문제 300 : 사원이름, 사원월급, 관리자 이름, 관리자 월급을 출력 select e.ename as 사원 , e.sal as 사원월급 , m.ename as 관리자 , m.sal as 관리자월급 from emp e, emp m where e.mgr = m.empno ; 위의 결과를 다시 출력하는데 관리자보다 더많은 월급을 받는 사원들만 출력하시오 select e.ename as 사원 , e.sal as 사원월급 , m.ename as 관리자 , m.sal as 관리자월급 from e..