오라클

데이터베이스

DATABASE STEP 27 - WITH

★ WITH 절 인라인뷰(from절 서브쿼리)에 이름을 붙이는 기술 with절 실행 방식 1. Materialize 방식 > 임시 테이블이 2번 이상 사용되면 내부에 임시 테이블 생성 + 반복 재사용 2. Inline 방식 > 임시 테이블 생성없이 매번 인라인 쿼리를 반복 실행 양식 - 양식 with 임시테이블명 as ( 결과셋 select ) select 문 [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 ..

데이터베이스

DATABASE STEP 26 - Rank

★ Rank 순위 함수 rownum의 사용을 여러가지 용도로 구현해 놓은 함수 1. rank() over() ranck() over(order by 컬럼명 [asc|desc]) 순위 부여시, 중복값이 발생하면 동일한 순위를 부여하고, 중복값의 개수만큼 건너뛰기 한다. 2. dense_rank() over() dense_ranck() over(order by 컬럼명 [asc|desc]) 순위 부여시, 중복값이 발생하면 동일한 순위를 부여하고, 그 뒤의 순위는 건너뛰기 없이 순차적으로 부여한다. 3. row_number() over() row_number() over(order by 컬럼명 [asc|desc]) 순위 부여시, 중복값과 상관없이 순차적으로 부여 직접 rownum을 사용한 결과와 동일하다 ■ 사..

데이터베이스

DATABASE STEP 25 - PSEUDO

★ PSEUDO 의사 컬럼, Pseudo Column 실제 컬럼이 아닌데 컬럼처럼 행동하는 요소 rownum 오라클 전용 row num > 행번호 > 레코드의 일련번호 from 절이 실행될 때 각 레코드에 일련번호를 할당한다. where 절의 영향을 받으면 일련번호를 다시 정비한다. (reindexing) rownum을 사용 > 서브 쿼리를 자주 사용한다. ■ 사용 ex) ex1) rownum의 사용법 select name, buseo, -- 컬럼(속성) > output > 객체의 특성에 따라 다른 값을 가진다. (개인 데이터) sysdate, -- 함수 > output > 모든 레코드가 동일한 값을 가진다. (정적 데이터) substr(name,2), -- 함수 > input + output > 객체마..

데이터베이스

DATABASE STEP 24 - ALTER

★ DDL > Object 객체 생성 : create 객체 삭제 : drop 객체 수정 : alter ★ 테이블 수정하기 테이블 정의 수정 > 컬럼 수정 > 컬럼명 or 자료형(길이) or 제약사항 테이블 수정해야 하는 상황 발생!! 1. 테이블 삭제(drop) > 테이블 DDL(Create) 수정 > 수정된 DDL로 새롭게 테이블 생성 a. 기존 테이블 데이터가 없었을 경우 > 아무 문제 없음 b. 기존 테이블 데이터가 있었을 경우 > 미리 데이터 백업 > 테이블 삭제 > 수정 후 생성 > 데이터 복구 - 공부할 때 자주 사용 - 개발 중에 사용 - 서비스 운영 중 > 불가능 !! 2. alter 명령어 사용 > 기존 테이블 구조(컬럼 정의) 변경 a. 기존 테이블 데이터가 없었을 경우 > 아무 문제 ..

데이터베이스

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 14 - Sequence

★ Sequence 데이터베이스 객체에는, 테이블, 계정, 제약사항이 있는데, 이 데이터베이스 객체중 하나이다. 오라클 전용 객체(다른 DBMS에는 없음) 일련 번호를 생성하는 객체 주로 식별자를 만드는 용도로 많이 사용한다. > PK컬럼에 일련 번호를 넣을 때 많이 사용한다. 시퀀스 객체 생성하기 create Sequence 시퀀스명[옵션]; 시퀀스 객체 삭제하기 drop sequence 시퀀스명; 시퀀스 객체 사용하기 시퀀스명.nextVal > 주로 사용함. 시퀀스명.currVal > 가끔 사용함. ■ 사용 ex) create sequence seqNum; drop sequence seqNum; select seqNum.nextVal from dual; --10 > 11 번호는 서로 영향을 받지 않음..

데이터베이스

DATABASE STEP 13 - DDL

★ DDL Data Definition Language 데이터 정의어 테이블, 뷰, 사용자, 인덱스, 트리거 등의 데이터베이스 오브젝트를 생성/수정/삭제하는 명령어 a. create : 생성 b. drop : 삭제 c. alter : 수정 테이블 조작하기 create table 테이블명 ( 컬럼 정의, 컬럼 정의, 컬럼 정의, 컬럼 정의, 컬럼 정의, 컬럼 정의, 컬럼명 자료형(길이) Null 제약사항 ); 제약사항, Constraint 해당 컬럼에 들어갈 데이터(값)에 대한 조건 조건을 만족하면 > 대입 조건을 불만족하면 > 에러발생 유효성 검사 도구 데이터베이스 > 데이터 관리 > 데이터 무결성(***)을 보장하는 도구 종류 1. NOT NULL - 해당 컬럼이 반드시 값을 가져야한다. - 해당 컬럼..

IT의 큰손
'오라클' 태그의 글 목록 (2 Page)