DBMS 서브쿼리와 오라클 데이터 타입

Huey·2023년 7월 25일
0

DBMS

목록 보기
6/9

1. 서브쿼리(SubQuery)란?

  • Main Query에 반대되는 개념으로 이름을 붙인 것
  • 메인쿼리를 구성하는 소단위 쿼리
  • select, insert, delete, update절에서 모두 사용 가능
  • 서브쿼리의 결과 집합을 메인 쿼리가 중간 결과값으로 사용
  • 서브 쿼리 자체는 일반 쿼리와 다를 바가 없다.

2. Oracle data type

2-1. 데이터 타입

  • 데이터 타입이란 컬럼이 저장되는 데이터 유형을 말한다. 기본 데이터 타입은 문자형, 실수, 소수, 자료형 등이 여러 데이터를 식별하는 타입입니다.
  • char 고정길이 문자 (10자리 선언하고 3자리 넣으면 낭비됨 varchar 가변길이 문자 ( 10자리 선언해도 3자리만)

2-2. 문자 데이터 타입

2-3. char vs varchar2

  • 예를들어 가변형 문자형 데이터타입인 varchar2에 10이라는 공간을 할당하고 abc라고 데이터를 입력했다고 치면 그 데이터는 10이라는 데이터 공간을 할당했기 때문에 10byte까지만 데이터를 입력받을 수 있고, 3글자만 입력되었으므로 그 데이터 공간은 3byte가 됩니다.
  • 반대로 고정형 문자형 데이터 타입인 char에 10이라는 데이터 공간을 할당하고 마찬가지로 abc라는 데이터 입력했다고 치면, 그 데이터는 3글자만 입력되었지만 데이터 공간은 10byte가 된다.
  • 남/여 같이 1글자만 들어올 수 있는 것이 아니라면 대부분 varchar2를 사용한다.

2-4. 숫자형 데이터 타입

  • NUMBER(P,S)
  • 가변 숫자
  • p는 소수점을 포함한 전체 자릿수를 의미하고, S는 소수점 자릿수를 의미한다. NUMBER는 가변 숫자이므로 P와 S를 입력하지 않으면 저장 데이터의 크기에 맞게 자동으로 조절된다.
입력값			타입				저장되는 값
123.89			NUMBER			123.89
123.89			NUMBER(3)-P값만 	124 (반올림해서 저장)
123.89			NUMBER(4,2)		에러
123.89			NUMBER(3,2)		에러
123.89			NUMBER(5,2)		123.89
123.89			NUMBER(6,1)		123.9 (9에서 반올림해서)  

2-5. 날짜 데이터 타입

  • DATE를 일반적으로 사용한다.

2-6. LOB 데이터 타입

모든 기록들을 남기는게 로그파일, 데이터 타입을 대용량 처리할 때 사용.

  • LOB이란 Large Object의 약자로 대용량 데이터를 저장할 수 있는 데이터 타입이다. 일반적으로 그래픽, 이미지, 사운드등 비정형 데이터를 저장할 때 LOB타입을 사용한다.
  • 문자형 대용량 데이터는 CLOB나 NCLOB, 그래픽, 이미지, 동영상 등의 데이터는 BLOB을 주로 사용한다.

0개의 댓글