본문 바로가기

전체 글

트랜잭션 데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위. 반드시 동시에 실행(COMMIT)되거나 취소(ROLLBACK)됨 COMMIT: 모든 DML작업을 수행한 후 작업을 완료할 때 반드시 필요. COMMIT명령을 수행해야지만 실제 하드디스크에 저장 ROLLBACK: 트랜잭션의 실행을 취소하였음을 알리는 연산자. 트랜잭션이 수행한 결과를 원래의 상태로 원상 복귀시킴. ROLLBACK을 실행하면 DML작업에 의해서 변경된 정보를 이전 정보로 환원. SAVEPOINT: 현재 트랜잭션 내에 저장점을 만듦. ROLLBACK TO SAVEPOINT_name명령으로 SAVEPOINT를 지정해놓은 지점으로 되돌아감. 더보기
집합연산자 (UNION, INTERSECT, MINUS) 집합 A(1,2,3), B(3,4,5)가 있다고 가정 UNION ALL : (1,2,3,3,4,5) 합집합. 중복을 포함한 결과의 합 검색 UNION: (1,2,3,4,5) 합집합. 중복을 제거한 결과의 합을 검색 INTERSECT: (3) 교집합. 양쪽 모두에서 포함된 행을 검색 MINUS: (1,2) 차집합. 첫 번째 검색 결과에서 두 번째 검색 결과를 제외한 나머지를 검색 1 2 3 4 SELECT 문 [UNION | UNION ALL | INTERSECT | MINUS] SELECT 문 [ORDER BY 컬럼 [ASC/CESC]; cs UNION: employees 테이블의 employee_id, job_id와 job_history 테이블의 employee_id, job_id를 중복을 제외하고 합.. 더보기
서브쿼리 - 다중열 여러 개의 컬럼을 검색하는 서브 쿼리 1 2 3 SELECT [DISTINCT] 컬럼, 컬럼... FROM 테이블 WHERE (컬럼1, 컬럼2,...) IN (SELECT 컬럼1, 컬럼2,... FROM 테이블); cs first_name이 'Bruce'인 직원의 manager_id와 job_id가 같은 직원들을 조회. 단 first_name이 Bruce인 직원 정보는 제외 (first_name이 Bruce인 직원의 manager_id는 103, job_id는 IT_PROG) 1 2 3 4 5 6 SELECT employee_id, first_name, job_id, salary, manager_id FROM employees WHERE (manager_id, job_id) IN (SELECT manag.. 더보기