Courses(55)
-
251031 TIL
FLASHBACK TABLE(10g)삭제한 테이블을 복원하는 SQL문삭제한 테이블 조회SHOW recyclebinSELECT * FROM user_recyclebin;SELECT * FROM dba_recyclebin WHERE owner = 'HR';삭제한 테이블 영구 삭제PURGE recyclebin테이블 삭제DROP TABLE hr.emp;SELECT * FROM user_recyclebin;삭제 테이블 조회SELECT * FROM "BIN$OCbOYC3eQU6vZWJizOBiBA==$0";user_recyclebin 에서 조회한 OBJECT_NAME을 테이블명으로 조회테이블 복원FLASHBACK TABLE emp TO BEFORE DROP;테이블은 원래대로 복원되지만, 인덱스와 제약 조건은 이름이..
2025.10.31 -
251030 TIL
DML(Cont.)MERGE(9i)INSERT, UPDATE, DELETE문을 한꺼번에 수행하는 SQL 문MERGE INTO hr.dw_emp dUSING hr.oltp_emp oON (d.employee_id = o.employee_id)WHEN MATCHED THEN UPDATE SET d.salary = o.salary * 1.1 DELETE WHERE o.flag = 'd'WHEN NOT MATCHED THEN INSERT (d.employee_id, d.last_name, d.salary, d.department_id) VALUES (o.employee_id, o.last_name, o.salary, o.department_id);문제-- [문제51] emp_..
2025.10.30 -
251029 TIL
DDL(Data Definition Language)데이터베이스 생성 또는 객체들을 생성 유지 관리하는 명령어권한 필요CREATE, ALTER, DROP, TRUNCATE, RENAME, COMMENTDCL(Cont.)시스템 권한 회수REVOKE create session FROM insa;객체 권한 부여SYS 또는 객체 소유자가 부여INSA 에서 HR 소유 테이블 조회hr.employees 테이블에 대한 SELECT 권한 없음SYS 에서 객체 권한 부여GRANT SELECT ON hr.employees TO insa;SELECT * FROM dba_tab_privs WHERE grantee = 'INSA';INSA 에서 확인SELECT * FROM user_tab_privs;SELECT * FROM h..
2025.10.29 -
251028 TIL
문제-- [문제42] -- 1) department_id, job_id, manager_id 기준으로 총액 급여를 출력-- 2) department_id, job_id 기준으로 총액급여를 출력-- 3) department_id 기준으로 총액급여를 출력-- 4) 전체 총액 급여를 출력-- 1),2),3),4)를 한꺼번에 출력해주세요.SELECT department_id, job_id, manager_id, sum(salary)FROM hr.employeesGROUP BY department_id, job_id, manager_idUNION ALLSELECT department_id, job_id, NULL, sum(salary)FROM hr.employeesGROUP BY department_id, job..
2025.10.28 -
251027 TIL
문제--[문제37] 년도,분기별 급여의 총액을 구하세요./*년도 1분기 2분기 3분기 4분기-------- ---------- ---------- ---------- ----------2001 170002002 36808 21008 110002003 35000 8000 35002004 40700 14300 17000 140002005 86900 16800 60800 334002006 69400 20400 14200 ..
2025.10.27 -
251024 TIL
서브쿼리중첩 서브 쿼리(Cont.)단일행 비교 연산자 사용시 주의점서브쿼리에서 여러 개 값이 나올 경우 오류 발생SELECT *FROM hr.employeesWHERE salary = (SELECT min(salary) FROM hr.employees GROUP BY department_id); 다중행 서브 쿼리서브 쿼리의 결과가 여러 개의 값이 나오는 서브 쿼리다중 행 비교 연산자(IN, ALL, ANY)IN(= OR)SELECT *FROM hr.employeesWHERE salary IN (SELECT min(salary) FROM hr.employees GROUP BY departm..
2025.10.24