본문 바로가기

oracle5

[오라클] 고양이와 개는 몇 마리 있을까? ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. NAMETYPENULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE INTAKE_CONDITION VARCHAR(N) FALSE NAME VARCHAR(N) TRUE SEX_UPON_INTAKE VARCHAR(N) FALSE 동.. 2021. 5. 8.
[SQL]DECODE문 , CASE WHEN문 -- DECODE -- 10번 부서는 20% 인상, 80번 부서 15%, 50번 부서 10% 그이외 동결 SELECT LAST_NAME, SALARY, DECODE (DEPARTMENT_ID,10,SALARY*1.2, 80,SALARY*1.15, 50,SALARY*1.1, SALARY) AS "REVISED SALARY", DEPARTMENT_ID FROM EMPLOYEES; --10번부서 사원은 50%,20번부서 사원은 40% 30번부서사원 -10% select last_name, salary, decode(department_id,10,salary*1.5, 20,salary*1.4, 30,salary*0.9) as 변경급여 from employees; --searched case:CASE WHEN s.. 2020. 9. 11.
[SQL]그룹화 관련 함수 (ROLLUP,CUBE) /*그룹화와 관련된 여러함수 */ /*ROLLUP, CUBE*/ /* SELECT [조회할 컬럼1],[컬럼2].. FROM [조회할 테이블 이름] WHERE [조회할 행을 선별하는 조건식] GROUP BY ROLLUP [그룹화 열 지정(여러개 가능)] GROUP BY CUBE [그룹화 열 지정(여러개 가능)] ->그룹화 데어티의 합계를 출력하는데 사용 */ /*ROLLUP*/ SELECT DEPTNO,JOB,COUNT(*),MAX(SAL),ROUND(AVG(SAL),2) FROM EMP GROUP BY ROLLUP(DEPTNO,JOB) ORDER BY DEPTNO,JOB; /*CUBE*/ SELECT DEPTNO,JOB,COUNT(*),MAX(SAL),ROUND(AVG(SAL),2) FROM EMP GR.. 2020. 9. 11.
[SQL]집합연산자(합집합(union),교집합(intersect),차집합(minus)) --1. set operator를 이용하여 사원이 없는 부서를 출력 select department_id from departments minus select department_id from employees; --2. set operator를 이용하여 job ID가 ST_CLERK을 포함하지 않는 부서의 ID를 출력 select department_id from departments minus select department_id from employees where job_id = 'ST_CLERK'; --3. set operator를 이용하여 부서가 없는 지역의 country_id와 country_name을 출력 select country_id, country_name from countries .. 2020. 9. 10.