데이터베이스

데이터베이스

DATABASE STEP 23 - UNION

★ 관계 대수 연산 셀렉션 > select where 프로젝션 > select column 조인 > a join b 합집합, 차집합, 교집합 ★ 집합 union = 합집합 intersect = 교집합 minus = 차집합 ■ 사용 ex) ex1) select * from tblMen union select * from tblWomen; ex2) 게시판에 대한 ex) select * from 영업부게시판; -- 천만 건 select * from 총무부게시판; --2천만 건 select * from 개발부게시판; -- 천만 건 select * from 영업부게시판 union select * from 총무부게시판 union select * from 개발부게시판; ex3) SNS > 게시물 > 년도별로 > ex..

데이터베이스

DATABASE STEP 22 - VIEW

★ 데이터베이스 객체 테이블 계정(hr) 제약사항 시퀀스 뷰 ★ 뷰(View) 데이터베이스 객체 중 하나 가상 테이블, 뷰 테이블 등... 테이블처럼 사용한다. 뷰는 SQL을 저장한 객체이다. 뷰는 호출될때마다 저장된 SQL이 실행된다. (실시간 가상 테이블) 사용 양식 create view 뷰명 as select문; create [or replace] view 뷰명 as select문; ★ 뷰의 역할(목적) 쿼리를 단순화한다. > 가독성 향상 보안 관리 쿼리 > 다른 사용자(hr 등)과 공유 ■ 사용 ex 1) create or replace view vwInsa -- tblInsa 테이블의 복사본 as select * from tblInsa; select * from vwInsa; -- tblInsa..

데이터베이스

DATABASE STEP 21 - JOIN

★ 조인(Join) (서로 관계를 맺은) 2개(1개) 이상의 테이블을 사용해서, 1개의 결과셋을 만드는 연산 테이블 A + 테이블 B = 테이블 C 조인의 종류 1. 단순 조인, Cross Join 2. 내부 조인, Inner Join 3. 외부 조인, Outer Join 4. 셀프 조인, Self Join 5. 전체 외부 조인, Full Outer Join ★ 조인에 용이한 더미데이터 테이블 생성(고객 판매테이블) 고객 판매 테이블 1. 고객 테이블 (부모 테이블) create table tblCustomer ( seq number primary key, -- 고객번호(PK) name varchar2(30) not null, -- 고객명 tel varchar2(15) not null, -- 연락처 ad..

데이터베이스

DATABASE STEP 20 - RDBMS&Foreign key

★ 관계형 데이터베이스 시스템(RDBMS)이 지양하는 사항 테이블에 기본키가 없는 상태 > 데이터 조작 곤란 null이 많은 상태의 테이블 > 데이터 조작 곤란 + 공간 낭비 데이터가 중복되는 상태 > 데이터 조작 곤란 + 공간 낭비 하나의 속성값이 원자값이 아닌 상태 ■ 1. 테이블에 기본키가 없는 상태 > 데이터 조작 곤란(3번과 동일) create table tbltest ( name varchar2(30) not null, age number(3) not null, address varchar2(300) not null ); insert into tblTest (name, age, address) values ('홍길동', 20, '서울시'); insert into tblTest (name, ag..

데이터베이스

DATABASE STEP 19 - SubQuery

★ MainQuery 여태까지의 SQL 일반적인 SQL 하나의 문장안에 하나의 select(insert, update, delete)로 구성된 쿼리 ★ Sub Query, 서브 쿼리, 부속 질의 하나의 문장(select, insert, update, delete)안에 또 다른 문장(select)이 들어있는 쿼리 하나의 select문 안에 들어있는 또 다른 select 문 삽입 위치 > 거의 대다수의 절(select 절, from 절, where 절 group by 절, having 절, order by 절) ■ 사용 ex) ex1) -- tblCountry. 인구수가 가장 많은 나라의 이름? select * from tblCountry; update tblCountr..

데이터베이스

DATABASE STEP 18 - Having 절

★ Having 절 조건절 group by로 부터 나온 셋에 대한 조건 집합에 대한 질문 > 집계 함수값을 조건으로 사용 조합 [WITH ] - WITH 절 SELECT column_list - SELECT 절 FROM table_name - FROM 절 [WHERE search_condition] - WHERE 절 [GROUP BY group_by_expression] - GROUP BY 절 [HAVING search_condition] - HAVING 절 [ORDER BY order_expresstion [ASC|DESC]]; - ORDER BY 절 select 컬럼리스트 -- 5. 컬럼을 선택 from 테이블 -- 1. 테이블로부터 where 조건 -- 2. 원하는 레코드를 group by 기준 -..

데이터베이스

DATABASE STEP 17 - Group By

★ Group By 레코드를 대상으로 그룹을 나누는 역할 특정 컬럼을 대상으로 같은 값을 가지는 레코드들끼리 그룹을 묶는 역할 그룹을 왜 나누는지? > 각각의 나눠진 그룹을 대상 > 집계 함수를 적용하기 위해서 실행 순서 및 구조 select 컬럼리스트 -- 4. 컬럼을 선택 from 테이블 -- 1. 테이블로부터 where 조건 -- 2. 원하는 레코드를 group by 기준 -- 3. 그룹을 나눠서 order by 정렬조건 -- 5. 정렬한다 ■ 사용 ex) tblIsan 테이블의 부서별 평균 급여 select * from tblInsa; select avg(basicpay) from tblInsa; -- 155만원, 60명 select distinct buseo from tblInsa; -- 7개 ..

데이터베이스

DATABASE STEP 16 - Update&Delete

★ Update DML 데이터 수정하는 명령어 원하는 행의 원하는 컬럼값을 수정하는 명령어 구문 update 테이블 set 컬럼명=값 update 테이블명 set 컬럼명=값, 컬럼명=값, 컬럼명=값; update 테이블명 set 컬럼명=값 where 절; update 테이블 set 컬럼명=값 [ , 컬럼명=값] x N [where절]; ■ 사용 ex) 주의할 점!! : update 문 사용 시 해당 데이터가 수정되므로 하기전에 꼭 commit을 하고, rollback으로 복구 해야함 commit : 현재 시점을 저장함. rollback : 최근에 commit했던 지점으로 다시 복구함. commit; rollback; update를 사용한 다양한 ex) -- 대한민국 수도 : 서울 > 세종 update t..

IT의 큰손
'데이터베이스' 태그의 글 목록 (3 Page)