본문 바로가기
  • 개발자를 꿈꾸는 중

Oracle4

그룹화 관련 함수 ROLLUP 설명보다 코드와 결과값부터 보겠다. 코드 자체는 어려움이 없다. GROUP BY 옆에 ROLLUP을 적고 ()안에 해당 열을 입력해주면 된다, ROLLUP 함수는 안에 입력한 열들을 소그룹부터 대그룹 순으로 각 그룹별 결과를 출력하고 마지막에 총 데이터 결과를 출력해준다. ROLLUP(DEPTNO, JOB)과 ROLLUP(JOB, DEPTNO)의 차이는 위의 결과값을 비교해 보자. CUBE CUBE 함수는 ROLLUP 함수와 비슷하다. 차이점은 명시하는 열의 N 개수에 따라 N^2개의 모든 조합을 출력한다는 것이다. 즉, CUBE(A,B,C)일 경우 1. A,B,C 해당하는 결과 출력 2. A, B 그룹의 결과 출력 3. B, C 그룹의 결과 출력 4. A, C 그룹의 결과 출력 5. A 결.. 2022. 6. 9.
데이터 그룹화 다중행 함수를 사용해 간단하게 데이터를 가공하여 하나의 결과 값을 출력해줄 수 있습니다. 더보기 다중행 함수란 지정 데이터를 가공하여 하나의 결과 값만 출력하는 함수입니다. 예를들어 AVG(), SUM(), COUNT() 등이 있습니다. 하지만 열(raw)의 값 별로 결과값을 출력하고자 할때는 번거롭다. 예를 들어 우리에게 회사사원 데이터를 가진 테이블이 있고 그곳에 부서 번호(DEPTNO), 급여(SAL), 직업(JOB)이 포함되어있습니다. 부서 10의 평균 급여: 위의 코드를 부서 20, 30도 하면 3 부서의 평균 급여를 알 수 있다. 이렇게 각각 출력하는 것은 대기업의 상황에서는 매우 비효율적이다. 데이터 그룹화는 특정 열 값별로 출력해줄 수 있어 이 문제를 아주 효율적으로 해결한다. 그룹화된 결.. 2022. 6. 9.
집합 연산자 집합 연산자는 SELECT 쿼리의 결과값들로 연산을 하는 연산자이다. 즉, 여러개의 SELECT 문을 하나의 쿼리로 만든다. 종류 UNION UNIONALL INTERSECT MINUS 예를 들어 지은이와 범수가 있다고 가정하고 아래와 같은 차를 가지고 있다. 표가 데이터 출력값이라고 생각하자 car name BMW 지은 AUDI 지은 VW 지은 Hyundai 지은 PORSCHE 범수 BMW 범수 AUDI 범수 UNION (합집합) - 두명이 가진 차 목록전체를 조회하려할 경우 UNION/UNIONALL을 사용한다. SELECT car FROM cartable WHERE name = '지은' UNION SELECT car FROM cartable WHERE name = '범수'; 결과물: car BMW .. 2022. 6. 8.
데이터 조회 조회 명령어 절 기능 SELECT 필요한 행이름의 리스트 나열 DISTINCT 데이터의 중복을 제거 FROM 조회하는 테이블명의 리스트 나열 WHERE 조회하는 열의 조건 나열 GROUP BY 동일한 값을 갖는 열들을 한 그룹으로 묶음 HAVING 열들의 그룹이 만족해야 하는 조건 제시 ORDER BY 열들의 정렬 순서 제시 SELECT * FROM EMP; --의미 : EMP 테이블(FROM EMP)의 모든 행들(*)을 조회(SELECT) 특정 행들만 조회: SELECT car, house FROM EMP; --의미 : EMP table에서 car와 house행만 조회 행의 값을 추가적으로 계산(연봉): SELECT sal, sal*12+commission FROM employee; --sal: 월급,.. 2022. 6. 8.
반응형