1. DECODE
-
DECODE문으로 IF문을 구현할 수 있음
-
DECODE(칼럼명, 인덱스 번호, ‘참일 경우 출력’, ‘거짓일 경우 출력’)
2. CASE문
-
CASE문은 IF~THEN ~ELSE-END의 프로그래밍 언어처럼 조건문을 사용할 수 있음
-
조건을 WHEN구에 사용하고 THEN은 해당 조건이 참이면 실행되고 거짓이면 ELSE구가 실행됨
CASE [ expression ]
WHEN condition_1 THEN result_1
WHEN condition_2 THEN result_2
ELSE result
END
1. ROWNUM
-
ROWNUM은 ORACLE 데이터베이스의 SELECT문 결과에 대해서 논리적인 일련번호를 부여함
-
ROWNUM은 조회되는 행 수를 제한할 때 많이 사용됨
-
ROWNUM은 화면에 데이터를 출력할 때 부여되는 논리적 순번임
-
ROWNUM을 사용해서 페이지 단위 출력을 하기 위해서는 인라인 뷰(Inline view)를 사용해야 함
*인라인부는 SELECT문에서 FROM절에 사용되는 서브쿼리를 의미함
*SQL Server에서는 TOP문을 MySQL에서는 LIMIT구를 사용함
2. ROWID
-
ROWID는 ORACLE 데이터베이스 내에서 데이터를 구분할 수 있는 유일한 값임
-
ROWID는 “SELECT ROWID, EMPNO FROM EMP”아 같은 SELECT문으로 확인할 수 있음
-
ROWID를 통해서 데이터가 어떤 데이터 파일, 어느 블록에 저장되어 있는 지 알 수 있음
3. ROWID 구조
-
오브젝트 번호: 오브젝트 별로 유일한 값을 가지고 있으며, 해당 오브젝트가 속해있는 값(길이: 1~6)
-
상대 파일 번호: 테이블스페이스(Tablespace)에 속해 있는 데이터 파일에 대한 상대 파일번호(길이: 7~9)
-
블록 번호: 데이터 파일 내부에서 어느 블록에 데이터가 있는지 알려줌(길이: 10~15)
-
데이터 번호: 데이터 블록에 데이터가 저장되어 있는 순서를 의미함(길이: 16~18)
'SQL 공부' 카테고리의 다른 글
(SQLD)TCL(Transaction Control Language) (0) | 2020.09.01 |
---|---|
(SQLD)WITH구문/DCL(Data Control Language) (0) | 2020.08.30 |
(SQLD)GROUP 연산/SELECT문 실행 순서/명시형 형변환 암시형 형변환/내장형 함수 (0) | 2020.08.24 |
(SQLD)WHERE문 사용 (0) | 2020.08.22 |
(SQLD)DML(Data Manipulation Language) (0) | 2020.08.20 |