일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 휴식
- 부천공간대여
- 해외여행
- 옥길동요거트
- 스컬킹점수계산
- 취미
- 존경하는위인
- 일
- 스컬킹
- mysql
- 개발자
- 보드게임점수계산
- 가장존경하는인물
- 옥길동파티룸
- 코딩
- 스컬킹점수
- 옥길요거트
- 파티룸
- 웹개발
- 서울파티룸
- 구로파티룸
- 부천파티룸
- 그릭요거트
- 광명파티룸
- 보드게임점수
- 스페이스우일
- 옥길파티룸
- 옥길그릭요거트
- MBTI
- 착한코딩
- Today
- Total
목록oracle (17)
SIMPLE & UNIQUE
PL/SQL(Procedure, Package)을 사용하다 보면 동적으로 쿼리(Query)를 생성하거나 텍스트(text) 쿼리를 입력 받아서 실행해야하는 경우가 있다. 다음 두가지 방법을 적절히 사용하면 좋은 결과를 얻을수 있다. EXECUTE IMMEDIATE : Inset, Update, Delete 구문을 실행하거나 Select 구문을 실행 시 INTO를 사용하여 단일 값을 리턴 받을 때 사용 OPEN-FOR : Select 구문을 실행 시 Cursor를 리턴 받을 때 사용 주의 : 바인드 변수(:) 사용 시 쿼리 내부에서 변수명은 의미가 없고 변수 순서, 개수가 USING의 변수 순서, 개수와 일치해야 한다. 바인드 변수가 없다면 USING는 생략가능. 1. EXECUTE IMMEDIATE (IN..
함수(Function)란? 보통 값을 계산하고 결과 값을 반환하기 위해서 함수를 많이 사용 한다. 대부분 구성이 프로시저와 유사 하지만 IN 파라미터만 사용 할 수 있다. 반드시 반환 될 값의 데이터 타입을 RETURN문에 선언해야 한다. 또한 PL/SQL블록 내에서 RETURN문을 통해서 반드시 값을 반환해야 한다.함수 문법 -- PL/SQL 블록에는 적어도 한 개의 RETURN 문이 있어야 한다. -- PL/SQL Block은 함수가 수행 할 내용을 정의한 몸체부분이다. CREATE OR REPLACE FUNCTION function name [(argument...)] RETURN datatype -- datatype은 반환되는 값의 datatype입니다. IS [변수 선언 부분] BEGIN [PL..
쿼리를 작성해야 할때 전달받은 인자값을 바탕으로 반복적인 SQL 구문을 작성할때 유용하다. 대표적으로 체크박스등과 같은 인자값이 동일한 다수의 배열 데이터를 검색조건에 반영해야 할때가 있는데, 이때 OR 구문 또는 IN 구문으로 작성하면 편리하게 사용할 수 있다. 다만 foreach의 경우 인자값으로 List와 Array 형태의 collection 타입만 사용이 가능하다. foreach 기본 문법 형태 collection = 전달받은 인자. List나 Array 형태만 가능item = 전달받은 인자값을 alias 명으로 대체open = 해당 구문이 시작될때 삽입할 문자열close = 해당 구문이 종료될때 삽입할 문자열separator = 반복 되는 사이에 출력할 문자열index=반복되는 구문 번호이다. ..
해시조인(Hash Join) 두 테이블 중 작은 것(B)을 비트맵 해시 테이블을 메모리에 올린 후 큰 테이블(A)을 스캔 하면서 메모리에 로딩된 테이블과 비교, 매칭되는 데이터를 추출하는 방식의 조인 해쉬조인으로 유도하기 위해서는 USE_HASH(B A) 힌트를 사용 SQL> select /*+ use_hash(d e) */ e.empno, e.ename, d.dname 2 from dept1 d, emp1 e 3 where e.deptno = d.deptno 4 and e.deptno = 0; 성능을 위해서는 작은 테이블이 메모리에 올라가는 것이 좋은데, 이 테이블을 드라이빙 테이블(driving/outer table) 이라고 한다. 해시 테이블이 메모리에 생성되면 성능이 좋아진다. 메모리에 생성되지 ..
DECODE- DECODE 함수는 조건에 따라 데이터를 다른 값이나 컬럼값으로 추출 할 수 있다.- DECODE(VALUE, IF1, THEN1, IF2, THEN2...) 형태로 사용 할 수 있다.- VALUE 값이 IF1일 경우에 THEN1 값을 반환하고, VALUE 값이 IF2일 경우에는 THEN2 값을 반환한다. NVLNVL 함수는 NULL 값을 다른 값으로 바꿀 때 사용하며, 모든 데이터 타입에 적용이 가능하다.?12345678910-- 매니저가 없는 값을 0으로 바꾸어서 출력하는 예제.SELECT empno, NVL(mgr, 0) mgr FROM emp WHERE deptno = 10; EMPNO MGR------- ------- 7782 7839 7839 0 7934 7782NVL2- NVL..
Oracle 대형 데이터형(BLOB, CLOB, LOB, NCLOB, BFILE) 1. LOB - Long Object- LOB은 TEXT, 그래픽, 이미지, 비디오, 사운드 등 구조화되지 않은 대형 데이터를 저장시 사용한다.- 일반적으로 테이블에 저장되는 구조화된 데이터들은 크기가 작지만, 멀티미디어 데이터의 크기가 크다.- 크기가 큰 데이터는 DB에 저장하기 힘들기 때문에 OS상 존재하는 파일에 데이터베이스가 접근하게 된다.- LONG, LONG RAW 데이터 유형은 예전에 사용던 것이고, 현재는 대부분 LOB 데이터 유형을 사용한다.- TO_LOB 함수를 이용하여 LONG 및 LONG RAW 를 LOB 으로 변경할 수 있다. - CLOB: 문자 대형 객체 (Character). Oracle Serv..