목록전체 글 (809)
Yeonee's Story
안녕하세요. #yeoneeblog 여니입니다 :) /* 두 개 이상의 테이블에서 데이터를 같이 조회하고자 할 때 사용되는 구문 => SELECT문 이용 조회 결과는 하나의 결과물(RESULTSET)으로 나옴 JOIN을 해야하는 이유? 관계형 데이터베이스에서 최소한의 데이터로 각각의 테이블에 데이터를 보관하고 있음 사원정보는 사원테이블, 직급정보는 직급테이블, .. 등 => 중복을 최소한해서 저장함 => 즉 JOIN구문을 이용해서 여러테이블간의 "관계"를 맺어서 같이 조회해야함 => 단, 무작정 JOIN을 하는 것이 아니라 테이블간에 "연결고리"에 해당하는 칼럼을 매칭시켜서 조회해야한다. 문법상 분류 : JOIN은 크게 "오라클전용구문" "ANSI(미국 국립 표준 협회)구문"으로 나뉘어짐 오라클 전용구문 ..
안녕하세요 . #yeoneeblog 여니입니다 :) 여러개의 쿼리문을 가지고 하나의 쿼리문으로 만드는 연산자 -UNION(합집합) : 두 쿼리문을 수행한 결과값을 더한 후 중복되는 부분은 한번만 빼서 중복을 제거한것 -UNION ALL : 두 쿼리문을 수행한 결과값을 더한 후 중복값은 제거하지 않고 그대로둔것 -INTERSECT(교집합) : 두 쿼리문을 수행한 결과값의 중복된 부분만 가져온것 -MINUS(차집합) : 선행 쿼리문 결과값에서 후행 쿼리문 결과값을 뺀 나머지 부분 주의해야할점 : 두 쿼리문의 결과를 합쳐서 한개의 테이블로 보여줘야하기 때문에 두 쿼리문의 SELECT절 부분은 같아야한다.(조회할 컬럼명이 일치해야함) 1. UNION(합집합) : 두 쿼리문을 수행한 결과값을 더해주지만, 중복값은..
안녕하세요. #yeoneeblog 여니입니다 :) /* 여러개의 쿼리문을 가지고 하나의 쿼리문으로 만드는 연산자 -UNION(합집합) : 두 쿼리문을 수행한 결과값을 더한 후 중복되는 부분은 한번만 빼서 중복을 제거한것 -UNION ALL : 두 쿼리문을 수행한 결과값을 더한 후 중복값은 제거하지 않고 그대로둔것 -INTERSECT(교집합) : 두 쿼리문을 수행한 결과값의 중복된 부분만 가져온것 -MINUS(차집합) : 선행 쿼리문 결과값에서 후행 쿼리문 결과값을 뺀 나머지 부분 주의해야할점 : 두 쿼리문의 결과를 합쳐서 한개의 테이블로 보여줘야하기 때문에 두 쿼리문의 SELECT절 부분은 같아야한다.(조회할 컬럼명이 일치해야함) */ -- 1. UNION(합집합) : 두 쿼리문을 수행한 결과값을 더해주..
안녕하세요. #yeoneeblog 여니입니다 :) 그룹을 묶어줄 기준을 제시할 수 있는 구문 => 그룹함수와 같이 쓰임. 해당 제시된 기준별로 그룹을 묶을 수 있음 여러개의 값들을 하나의 그룹으로 묶어서 처리할 목적으로 사용 [표현법] GROUP BY 묶어서 기준이 될 컬럼 ex)-- 각 부서별 총 급여 합을 급여별로 내림차순 정렬해서 조회 --> 어느부서가 제일 급여를 많이 받나? SELECT DEPT_CODE, SUM(SALARY) -- 3 (정렬전에 조회하고) FROM EMPLOYEE -- 1 GROUP BY DEPT_CODE -- 2 (조건검사하고) ORDER BY 2 DESC; -- 4 (마지막 정렬) 그룹에 대한 조건을 제시하고자할때 사용되는 구문 (주로 그룹함수를 가지고 조건제시) => GR..
안녕하세요. #yeoneeblog 여니입니다 :) /* 그룹을 묶어줄 기준을 제시할 수 있는 구문 => 그룹함수와 같이 쓰임. 해당 제시된 기준별로 그룹을 묶을 수 있음 여러개의 값들을 하나의 그룹으로 묶어서 처리할 목적으로 사용 [표현법] GROUP BY 묶어서 기준이 될 컬럼 */ -- 각 부서별로 총 급여의 합계 SELECT DEPT_CODE, SUM(SALARY) FROM EMPLOYEE GROUP BY DEPT_CODE; -- 부서별로 그룹을 짓겠다. -- 각 부서별 사원수 SELECT DEPT_CODE, COUNT(*) FROM EMPLOYEE GROUP BY DEPT_CODE; -- 각 부서별 총 급여 합을 부서별 오름차순으로 정렬해서 조회 SELECT DEPT_CODE, SUM(SALARY..