Aliases of Built-in Data Types
BIGINT
NUMBER(19,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
BINARY
자세한 내용은 BINARY를 참조한다.
BINARY VARYING
자세한 내용은 BINARY VARYING을 참조한다.
BINARY LONG VARYING
자세한 내용은 BINARY LONG VARYING을 참조한다.
BOOLEAN
자세한 내용은 BOOLEAN을 참조한다.
CHAR
CHARACTER와 동일하다.
자세한 내용은 CHARACTER를 참조한다.
CHARACTER
자세한 내용은 CHARACTER를 참조한다.
CHARACTER VARYING
자세한 내용은 CHARACTER VARYING을 참조한다.
CHARACTER LONG VARYING
자세한 내용은 CHARACTER LONG VARYING을 참조한다.
DATE
자세한 내용은 DATE를 참조한다.
DEC
NUMERIC과 동일하다.
자세한 내용은 NUMERIC을 참조한다.
DECIMAL
NUMERIC과 동일하다.
자세한 내용은 NUMERIC을 참조한다.
DOUBLE
FLOAT(53)과 동일하다.
자세한 내용은 FLOAT을 참조한다.
DOUBLE PRECISION
FLOAT(53)과 동일하다.
자세한 내용은 FLOAT을 참조한다.
FLOAT
자세한 내용은 FLOAT을 참조한다.
FLOAT4
FLOAT(24)와 동일하다.
자세한 내용은 FLOAT을 참조한다.
FLOAT8
FLOAT(53)와 동일하다.
자세한 내용은 FLOAT을 참조한다.
INT
NUMBER(10,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
INT2
NUMBER(5,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
INT4
NUMBER(10,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
INT8
NUMBER(19,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
INTEGER
NUMBER(10,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
INTERVAL
자세한 내용은 INTERVAL을 참조한다.
LONG BINARY VARYING
BINARY LONG VARYING과 동일하다.
자세한 내용은 BINARY LONG VARYING을 참조한다.
LONG CHAR VARYING
CHARACTER LONG VARYING과 동일하다.
자세한 내용은 CHARACTER LONG VARYING을 참조한다.
LONG CHARACTER VARYING
CHARACTER LONG VARYING과 동일하다.
자세한 내용은 CHARACTER LONG VARYING을 참조한다.
LONG VARCHAR
CHARACTER LONG VARYING과 동일하다.
자세한 내용은 CHARACTER LONG VARYING을 참조한다.
NATIVE_BIGINT
자세한 내용은 NATIVE_BIGINT를 참조한다.
NATIVE_DOUBLE
자세한 내용은 NATIVE_DOUBLE을 참조한다.
NATIVE_INTEGER
자세한 내용은 NATIVE_INTEGER를 참조한다.
NATIVE_REAL
자세한 내용은 NATIVE_REAL을 참조한다.
NATIVE_SMALLINT
자세한 내용은 NATIVE_SMALLINT를 참조한다.
NUMBER
자세한 내용은 NUMBER를 참조한다.
NUMERIC
자세한 내용은 NUMERIC을 참조한다.
ROWID
자세한 내용은 ROWID를 참조한다.
SMALLINT
NUMBER(5,0)와 동일하다.
자세한 내용은 NUMBER를 참조한다.
TIME
자세한 내용은 TIME을 참조한다.
TIMESTAMP
자세한 내용은 TIMESTAMP를 참조한다.
VARBINARY
BINARY VARYING과 동일하다.
자세한 내용은 BINARY VARYING을 참조한다.
VARCHAR
CHARACTER VARYING과 동일하다.
자세한 내용은 CHARACTER VARYING을 참조한다
VARCHAR2
CHARACTER VARYING과 동일하다.
자세한 내용은 CHARACTER VARYING을 참조한다.
BINARY
구문
BINARY [ (length) ]
구문 규칙 및 파라미터
length: Binary string의 길이이다.
범위: 1 ~ 2000
기본값: 1
설명
고정 길이의 binary string을 저장한다. 명시된 length 보다 저장되는 binary string의 길이가 짧은 경우, 나머지 부분은 X'00'로 저장된다. • 저장 공간의 크기: length 값에 해당하는 bytes
참조
BINARY VARYING
구문
BINARY VARYING (length)
구문 규칙 및 파라미터
length: Binary string의 최대 길이이다.
범위: 1 ~ 4000
설명
가변 길이의 binary string을 저장한다. • 저장 공간의 크기: 저장할 binary string의 byte 크기 • Alias names: VARBINARY
참조
BINARY LONG VARYING
구문
BINARY LONG VARYING
설명
긴 가변 binary string 값을 저장한다. • 최대 저장 크기: 100 megabytes • 저장 공간의 크기: 저장할 binary string의 byte 크기 • Alias names: LONG BINARY VARYING, LONG VARBINARY
Key column으로 사용할 수 없어 다음과 같은 제약이 있다. • 인덱스의 key column으로 사용할 수 없다. • ORDER BY 절의 expression으로 사용할 수 없다. • GROUP BY 절의 expression으로 사용할 수 없다. • DISTINCT 절의 expression으로 사용할 수 없다. • UNION, INTERSECT, EXCEPT 절의 expression 으로 사용할 수 없다.
참조
BOOLEAN
구문
BOOLEAN
설명
TRUE 또는 FALSE 값을 저장한다. • 저장 공간의 크기: 1 byte
CHARACTER
구문
CHARACTER [ (length [ CHARACTERS | OCTETS | CHAR | BYTE ] ) ]
구문 규칙 및 파라미터
length: 문자열의 길이이다.
범위: 1 ~ 2000
기본값: 1
[ CHARACTERS | OCTETS | CHAR | BYTE ]: length의 단위이다.
CHARACTERS
문자의 개수이다.
CHAR는 CHARACTERS와 동일하다.
OCTETS
바이트의 개수이다.
BYTE는 OCTETS와 동일하다.
생략할 경우, database를 생성할 때 설정한 CHAR_LENGTH_UNITS 프로퍼티 값을 따른다.
설명
고정 길이의 문자열을 저장한다. 명시된 length 보다 저장되는 string의 길이가 짧은 경우, 나머지 부분에는 공백이 저장된다.
저장 공간의 크기: length 값에 해당하는 bytes 크기
Alias name: CHAR
참조
CHARACTER VARYING
구문
CHARACTER VARYING ( length [ CHARACTERS | OCTETS | CHAR | BYTE ] )
구문 규칙 및 파라미터
length: 문자열의 길이이다.
Range: 1 ~ 4000
[ CHARACTERS | OCTETS | CHAR | BYTE ]: length의 단위이다.
CHARACTERS
문자의 개수이다.
CHAR는 CHARACTERS와 동일하다.
OCTETS
바이트의 개수이다.
BYTE는 OCTETS와 동일하다.
생략할 경우, database를 생성할 때 설정한 CHAR_LENGTH_UNITS 프로퍼티 값을 따른다.
설명
가변 길이의 문자열을 저장한다.
저장 공간의 크기 : 저장할 문자열의 byte 크기
Alias names: VARCHAR, VARCHAR2
참조
CHARACTER LONG VARYING
구문
CHARACTER LONG VARYING
설명
긴 가변 문자열 값을 저장한다. • 최대 저장 크기: 100 megabytes • 저장 공간의 크기: 저장할 문자열의 byte 크기 • Alias names: LONG CHARACTER VARYING, LONG CHAR VARYING, LONG VARCHAR
Key의 column으로 사용할 수 없어 다음과 같은 제약이 있다. • 인덱스의 key column으로 사용할 수 없다. • ORDER BY 절의 expression으로 사용할 수 없다. • GROUP BY 절의 expression으로 사용할 수 없다. • DISTINCT 절의 expression으로 사용할 수 없다. • UNION, INTERSECT, EXCEPT 절의 expression으로 사용할 수 없다.
참조
DATE
구문
DATE
설명
YEAR, MONTH, DAY, HOUR, MINUTE, SECOND (fractional seconds 제외)를 포함하는 날짜 형식이다. • 값의 범위: '4714-11-24 BC' ~ '9999-12-31 AD' 범위의 날짜값 • 저장 공간의 크기: 8 bytes
참조
FLOAT
구문
FLOAT[ ( precision ) ]
구문 규칙 및 파라미터
precision: 유효 숫자의 이진 정밀도이다.
precision의 범위: 1 ~ 126
기본값: 126
설명
이진 정밀도를 가지는 부동 소수점 값을 저장한다.
지수 범위 : 1E-130 ~ 1E+125
저장 공간의 크기 : (정수자리수 + 1) / 2 + (소수자리수 + 1) / 2 + 1 (Exponent와 sign 정보)
NUMBER, NUMERIC 타입과 달리 이진 precision 값을 갖는다.
Alias names: REAL = FLOAT(24), DOUBLE = FLOAT(53), DOUBLE PRECISION = FLOAT(53), FLOAT4 = FLOAT(24), FLOAT8 = FLOAT(53)
참조
INTERVAL
구문
<interval_type> ::=
INTERVAL YEAR [ ( leading_precision ) ]
| INTERVAL MONTH [ ( leading_precision ) ]
| INTERVAL DAY [ ( leading_precision ) ]
| INTERVAL HOUR [ ( leading_precision ) ]
| INTERVAL MINUTE [ ( leading_precision ) ]
| INTERVAL SECOND [ ( leading_precision [ , fractional_seconds_precision ] ) ]
| INTERVAL YEAR [ ( leading_precision ) ] TO MONTH
| INTERVAL DAY [ ( leading_precision ) ] TO HOUR
| INTERVAL DAY [ ( leading_precision ) ] TO MINUTE
| INTERVAL DAY [ ( leading_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]
| INTERVAL HOUR [ ( leading_precision ) ] TO MINUTE
| INTERVAL HOUR [ ( leading_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]
| INTERVAL MINUTE [ ( leading_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]구문 규칙 및 파라미터
INTERVAL YEAR [ ( leading_precision ) ]: YEAR의 기간을 저장한다.
leading_precision
YEAR의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL MONTH [ ( leading_precision ) ]: MONTH의 기간을 저장한다.
leading_precision
MONTH의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL YEAR [ ( leading_precision ) ] TO MONTH: YEAR와 MONTH의 기간을 저장한다.
leading_precision
YEAR의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL DAY [ ( leading_precision ) ]: DAY의 기간을 저장한다.
leading_precision
DAY의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL HOUR [ ( leading_precision ) ]: HOUR의 기간을 저장한다.
leading_precision
HOUR의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL MINUTE [ ( leading_precision ) ]: MINUTE의 기간을 저장한다.
leading_precision
MINUTE의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL SECOND [ ( leading_precision [ , fractional_seconds_precision ] ) ]: SECOND의 기간을 저장한다.
leading_precision
SECOND의 digit 수
값의 범위: 2 ~ 6
기본값: 2
fractional_seconds_precision
fractional seconds의 digit 수
값의 범위: 0 ~ 6
기본값: 6
INTERVAL DAY [ ( leading_precision ) ] TO HOUR: DAY와 HOUR의 기간을 저장한다.
leading_precision
DAY의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL DAY [ ( leading_precision ) ] TO MINUTE: DAY, HOUR, MINUTE의 기간을 저장한다.
leading_precision
DAY의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL DAY [ ( leading_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]: DAY, HOUR, MINUTE, SECOND의 기간을 저장한다.
leading_precision
DAY의 digit 수
값의 범위: 2 ~ 6
기본값: 2
fractional_seconds_precision
fractional seconds의 digit 수
값의 범위: 0 ~ 6
기본값: 6
INTERVAL HOUR [ ( leading_precision ) ] TO MINUTE: HOUR와 MINUTE의 기간을 저장한다.
leading_precision
HOUR의 digit 수
값의 범위: 2 ~ 6
기본값: 2
INTERVAL HOUR [ ( leading_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]: HOUR, MINUTE, SECOND의 기간을 저장한다.
leading_precision
HOUR의 digit 수
값의 범위: 2 ~ 6
기본값: 2
fractional_seconds_precision
fractional seconds의 digit 수
값의 범위: 0 ~ 6
기본값: 6
INTERVAL MINUTE [ ( leading_precision ) ] TO SECOND [ ( fractional_seconds_precision ) ]: MINUTE 와 SECOND의 기간을 저장한다.
leading_precision
MINUTE의 digit 수
값의 범위: 2 ~ 6
기본값: 2
fractional_seconds_precision
fractional seconds의 digit 수
값의 범위: 0 ~ 6
기본값: 6
설명
INTERVAL 타입은 값의 표현 범위에 따라 다음과 같이 YEAR TO MONTH 계열과 DAY TO SECOND 계열로 구분할 수 있다.
YEAR TO MONTH 계열: 저장공간의 크기는 8 byte이다.
INTERVAL YEAR
INTERVAL MONTH
INTERVAL YEAR TO MONTH
DAY TO SECOND 계열: 저장 공간의 크기는 16 byte이다.
INTERVAL DAY
INTERVAL HOUR
INTERVAL MINUTE
INTERVAL SECOND
INTERVAL DAY TO HOUR
INTERVAL DAY TO MINUTE
INTERVAL DAY TO SECOND
INTERVAL HOUR TO MINUTE
INTERVAL HOUR TO SECOND
INTERVAL MINUTE TO SECOND
leading_precision이 지정된 field에 지정된 digit 이상의 숫자가 올 경우, 에러를 반환한다. fractional_seconds_precision이 지정된 field에 지정된 digit 이상의 숫자가 올 경우, 반올림된다.
Field | Precision | 값의 범위 |
|---|---|---|
MONTH | 2 | 0 ~ 11 |
HOUR | 2 | 0 ~ 23 |
MINUTE | 2 | 0 ~ 59 |
SECOND(소수점 이전값) | 2 | 0 ~ 59 |
참조
자세한 내용은 Interval Literals를 참조한다.
NATIVE_BIGINT
구문
NATIVE_BIGINT
설명
Signed 8-byte 정수를 저장한다.
C 언어의 long long (8 bytes integer)과 동일하다.
값의 범위: -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807
저장 공간의 크기: 8 bytes
NATIVE_DOUBLE
구문
NATIVE_DOUBLE
설명
Double precision floating-point number (8 bytes)를 저장한다.
C 언어의 double과 동일하다.
지수값의 범위: 1E-307 ~ 1E+308
저장 공간의 크기: 8 bytes
NATIVE_INTEGER
구문
NATIVE_INTEGER
설명
Signed 4 byte 정수를 저장한다.
C 언어의 integer (4 bytes)와 동일하다.
값의 범위: -2,147,483,648 ~ +2,147,483,647
저장 공간의 크기: 4 bytes
NATIVE_REAL
구문
NATIVE_REAL
설명
Single precision floating-point number (4 bytes)를 저장한다.
C 언어의 float과 동일하다.
지수값의 범위: 1E-37 ~ 1E+37
저장 공간의 크기: 4 bytes
NATIVE_SMALLINT
구문
NATIVE_SMALLINT
설명
Signed 2 byte 정수를 저장한다.
C 언어의 short과 동일하다.
값의 범위: -32,768 ~ 32,767
저장 공간의 크기: 2 bytes
NUMBER
구문
NUMBER [ ( precision [ , scale ] ) ]
구문 규칙 및 파라미터
NUMBER: precision과 scale이 없는 부동 소수점 숫자를 저장한다.
유효 숫자의 범위: 38
지수값의 범위: 1E-130 ~ 1E+125
FLOAT(126)과 동일하다.
NUMBER(precision): precision의 유효 자리수를 가지는 정수를 저장한다.
Precision의 범위: 1 ~ 38
Scale의 값: 0
FLOAT 타입과 달리 십진 precision 값을 갖는다.
NUMBER(precision, 0), NUMERIC(precision, 0)과 동일하다.
NUMBER(precision, scale): precision과 scale을 갖는 고정 소수점 숫자를 저장한다.
Precision의 범위: 1 ~ 38
Scale의 범위: -84 ~ 127
FLOAT 타입과 달리 십진 precision 값을 갖는다.
NUMERIC(precision, scale)과 동일하다.
Alias names: SMALLINT = NUMBER(5,0), INTEGER = NUMBER(10,0), BIGINT = NUMBER(19,0), INT2 = NUMBER(5,0), INT4 = NUMBER(10,0), INT8 = NUMBER(19,0)
설명
NUMBER 타입은 NUMERIC 타입과 비슷하지만 precision과 scale을 모두 생략할 경우 NUMBER 타입은 precision과 scale이 정해지지 않은 부동 소수점 숫자를 저장한다는 점이 다르다.
precision, scale이 없는 NUMBER: 부동 소수점 숫자
precision, scale이 없는 NUMERIC: NUMERIC(38,0)의 고정 소수점 숫자
저장 공간의 크기: (정수자리수 + 1) / 2 + (소수자리수 + 1) / 2 + 1 (Exponent와 sign 정보)
참조
NUMERIC
구문
NUMERIC [ ( precision [ , scale ] ) ]
구문 규칙 및 파라미터
precision: 유효 숫자의 십진 정밀도이다.
precision의 범위: 1 ~ 38
기본값: 38
scale: 소수점의 범위이다.
scale의 범위: -84 ~ 127
기본값: 0
설명
precision과 scale을 갖는 고정 소수점 숫자를 저장한다.
precision과 scale을 생략할 경우, 다음과 같은 의미를 갖는다.
NUMERIC = NUMERIC(38,0)
NUMERIC(p) = NUMERIC(p,0)
NUMBER 타입은 NUMERIC 타입과 비슷하지만 precision과 scale을 모두 생략할 경우 NUMBER 타입은 precision과 scale이 정해지지 않은 부동 소수점 숫자를 저장한다는 점이 다르다.
precision, scale이 없는 NUMBER: 부동 소수점 숫자
precision, scale이 없는 NUMERIC: NUMERIC(38,0)의 고정 소수점 숫자
저장 공간의 크기: (정수자리수 + 1) / 2 + (소수자리수 + 1) / 2 + 1 (Exponent와 sign 정보)
참조
ROWID
구문
ROWID
설명
ROWID 타입은 레코드 식별자 (ROWID)를 저장한다. 레코드 식별자 (ROWID)는 데이터베이스 내 각 레코드의 식별정보이다. ROWID pseudo column을 조회하면 각각의 레코드 식별자 (ROWID) 값을 확인할 수 있는데, 이 ROWID pseudo column은 ROWID data type 정보를 갖는다.
Standalone system에서의 ROWID 타입의 구성 요소는 다음과 같다. • OBJECT_ID • TABLESPACE_ID • PAGE_ID • PAGE 내 OFFSET
Cluster system에서의 ROWID 타입의 구성 요소는 다음과 같다. • GRID_BLOCK_SEQUENCE • GRID_BLOCK_ID • MEMBER_ID • SHARD_ID
ROWID는 A~Z, a~z, 0~9, +, / 를 포함할 수 있는 base 64 value로 저장된다. ROWID-related functions를 이용하여 ROWID 각각의 구성 요소 정보를 얻을 수 있다.
저장 공간의 크기: 16 bytes
참조
TIME
구문
TIME [ ( fractional_seconds_precision ) ] [ WITH TIME ZONE | WITHOUT TIME ZONE ]
구문 규칙 및 파라미터
fractional_seconds_precision: fractional seconds의 유효자리 수이다.
fractional_seconds_precision의 범위: 0 ~ 6
기본값: 6
[ WITH TIME ZONE | WITHOUT TIME ZONE ]: TIME ZONE 값 저장 여부이다.
WITH TIME ZONE: time zone을 포함한 시간
WITHOUT TIME ZONE: time zone을 포함하지 않는 시간
기본값: WITHOUT TIME ZONE
설명
HOUR, MINUTE, SECOND를 가지는 시간을 저장한다.
저장 공간의 크기
TIME WITHOUT TIME ZONE: 8 bytes
TIME WITH TIME ZONE: 12 bytes
참조
TIMESTAMP
구문
TIMESTAMP [ ( fractional_seconds_precision ) ] [ WITH TIME ZONE | WITHOUT TIME ZONE ]
구문 규칙 및 파라미터
fractional_seconds_precision: fractional seconds의 유효자리 수이다.
fractional_seconds_precision의 범위: 0 ~ 6
기본값: 6
[ WITH TIME ZONE | WITHOUT TIME ZONE ]: TIME ZONE 값 저장 여부이다.
WITH TIME ZONE: time zone을 포함한 시간
WITHOUT TIME ZONE: time zone을 포함하지 않는 시간
기본값: WITHOUT TIME ZONE
설명
YEAR, MONTH, DATE, HOUR, MINUTE, SECOND를 가지는 시간을 저장한다.
저장 공간의 크기
TIMESTAMP WITHOUT TIME ZONE: 8 bytes
TIMESTAMP WITH TIME ZONE: 12 bytes