SQL 61

DDL(Data Definition Language, 데이터 정의어) ==> create, drop, alter, truncate

-- DDL(Data Definition Language) : 데이터 정의어 ==> create, drop, alter, truncate --> 여기서 중요한 것은 DDL문을 실행하면 자동적으로 commit; 이 된다는 것이다. 100번 사원의 정보 변경 select * from employees where employee_id = 100; -- salary ==> 24000 -- email ==> SKING update employees set salary = 54321, email = 'dfsdfsd' where employee_id = 100; -- 1 행 이(가) 업데이트되었습니다. create table tbl_temp (no number , name varchar2(20) ); -- Table..

SQL 2022.07.12

트랜잭션 제어어(TCL == Transaction Control Language) - commit, rollback

--> TCL 은 commit, rollback 을 말한다. -- *** Transaction(트랜잭션) 처리 *** -- --> Transaction(트랜잭션)이라 함은 관련된 일련의 DML로 이루어진 한꾸러미(한세트)를 말한다. --> Transaction(트랜잭션)이라 함은 데이터베이스의 상태를 변환시키기 위하여 논리적 기능을 수행하는 하나의 작업단위를 말한다. /* 예> 네이버카페(다음카페)에서 활동 글쓰기(insert)를 1번하면 내포인트 점수가 10점이 올라가고(update), 댓글쓰기(insert)를 1번하면 내포인트 점수가 5점이 올라가도록 한다(update) 위와같이 정의된 네이버카페(다음카페)에서 활동은 insert 와 update 가 한꾸러미(한세트)로 이루어져 있는 것이다. 이와 같..

SQL 2022.07.12

데이터 조작어(DML) - merge (병합)

-- 어떤 2개 이상의 테이블에 존재하는 데이터를 다른 테이블 한 곳으로 모으는 것(병합)이다. -- merge = insert + update ----- ***** 데이터베이스 링크(Database Link) 만들기 ***** ----- 0. DB 서버가 될 컴퓨터에서는 제어판-방화벽-TCP포트 1521 을 허용 으로 만들어야 한다. 1. DB 클라이언트 컴퓨터의 탐색기에서 C:\OracleXE18C\product\18.0.0\dbhomeXE\network\admin 에 간다. 2. tnsnames.ora 파일을 메모장으로 연다. 3. TEACHER = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = 211.238.142.40)(PORT = 1521)) (CON..

SQL 2022.07.11

데이터 조작어(DML == Data Manuplation Language)

--- DML 문은 기본적으로 수동 commit 이다. --- 즉, DML 문을 수행한 다음에는 바로 디스크(파일)에 적용되지 않고 commit 해야만 적용된다. --- 그래서 DML 문을 수행한 다음에 디스크(파일)에 적용치 않고자 한다라면 rollback 하면 된다. 1. insert --> 데이터 입력 2. update --> 데이터 수정 3. delete --> 데이터 삭제 4. merge --> 데이터 병합 insert 는 문법이 insert into 테이블명(컬럼명1,컬럼명2,...) values(값1,값2,...); 이다. ※ Unconditional insert all -- ==>조건이 없는 insert [문법] insert all into 테이블명1(컬럼명1, 컬럼명2, ....) val..

SQL 2022.07.11

Pseudo(의사, 유사, 모조) Column - rowid, rownum

-- Pseudo(의사) Column 은 rowid 와 rownum(중요) 이 있다. !! 1. rowid rowid 는 오라클이 내부적으로 사용하기 위해 만든 id 값으로써 행에 대한 id값으로, 오라클 전체 내에서 고유한 값을 가진다. create table tbl_heowon (userid varchar2(20), name varchar2(20), address varchar2(100) ); -- Table TBL_HEOWON이(가) 생성되었습니다. insert into tbl_heowon(userid, name, address) values('leess','이순신','서울'); insert into tbl_heowon(userid, name, address) values('eomjh','엄정화',..

SQL 2022.07.11

SET Operator(SET 연산자, 집합연산자) - INTERSECT (교집합), MINUS (차집합)

각 테이블마다 동일한 행 추가 insert into tbl_panmae_202205(panmaedate, jepumname, panmaesu) values( to_date('2021-04-05', 'yyyy-mm-dd'), '쵸코파이', 10); insert into tbl_panmae_202206(panmaedate, jepumname, panmaesu) values( to_date('2021-04-05', 'yyyy-mm-dd'), '쵸코파이', 10); insert into tbl_panmae(panmaedate, jepumname, panmaesu) values( to_date('2021-04-05', 'yyyy-mm-dd'), '쵸코파이', 10); commit; 동일한 행 조회 select *..

SQL 2022.07.11

SET Operator(SET 연산자, 집합연산자) - UNION, UNION ALL

------- ===== **** SET Operator(SET 연산자, 집합연산자) **** ===== ------- -- 종류 -- 1. UNION 2. UNION ALL 3. INTERSECT 4. MINUS --- 면접시 JOIN 과 UNION 의 차이점에 대해서 말해보기 --- ==> UNION 은 테이블(뷰)과 테이블(뷰)을 합쳐서 보여주는 것으로, 이것은 행(ROW)과 행(ROW)을 합친 결과를 보여주는 것이다. 공통이 존재하면 한번만 출력함 자동적으로 오름차순정렬됨 ==> UNION ALL 은 중복제거X, 정렬X A = { a, x, b, e, g } - - ( - : 공통) B = { c, d, a, b, y, k, m} - - A ∪ B = {a, b, c, d, e, g, k, m, ..

SQL 2022.07.11

Multi Table JOIN (다중 테이블 조인)

---> 3개 이상의 테이블(뷰)을 가지고 조인 시켜주는 것이다. ------------------------------------------------------------------------------------------------------------------------- 대륙명 국가명 부서주소 부서번호 부서명 사원번호 사원명 기본급여 ------------------------------------------------------------------------------------------------------------------------- Americas United States of America Seattle 2004 Charade Rd 90 Executive 100 Steven..

SQL 2022.07.08

SELF JOIN(자기조인)

자기자신의 테이블(뷰)을 자기자신의 테이블(뷰)과 JOIN 시키는 것을 말한다. 이때 반드시 테이블(뷰)에 대한 alias(별칭)를 달리 주어서 실행해야 한다. --- 아래처럼 나오도록 하기 --- ------------------------------------------------------------------------------------------------------- 사원번호 사원명 이메일 급여 직속상관번호 직속상관명 employee_id first_name || last_name email salary employee_id first_name || last_name ---------------------------------------------------------------------..

SQL 2022.07.08