숫자 타입
- 숫자(정수 및 실수) 자료를 저장
- number 타입이 제공
컬럼명 NUMBER[([정밀도 | * [,스케일]])]
. 정수와 실수 자료를 저장
. 저장 범위 : 1.0 X E-130 ~ 9.9999...XE125(9의 갯수가 38개)
. 정밀도 > 스케일 인 경우
-> 정밀도는 전체 자리수, 스케일은 소숫점 이하의 자리수
-> 정밀도는 1~38 사이의 수
-> 스케일은 -84 ~ 127 사이의 수로 표현
-> *는 전체 허용 범위 내에서 사용자가 입력한 자료에 맞추어 기억공간을 확보
사용 예시
----------------------------------------------------------
입력값 선언 기억되는 값
----------------------------------------------------------
1,234,567.897 NUMBER 1,234,567.897
1,234,567.897 NUMBER(*,1) 1,234,567.9 --소수점 2번째 자리에서 반올림
1,234,567.897 NUMBER() 1,234,568 --NUMBER(*,0)
1,234,567,897 NUMBER(9,2) 1,234,567,90
1,234,567,897 NUMBER(6) 오류
||
NUMBER(6,0)
1,234,567.897 NUMBER(7,-2) 1,234,600 --스케일이 음수인 경우
--정수 부분에서 반올림하라
※정밀도 < 스케일 인 경우
. 정밀도는 0이 아닌 유효숫자의 갯수 (소숫점 이하)
. 스케일 - 정밀도 : 소수점 이하에서 맨 앞에 존재해야 할 0의 개수
사용예시
----------------------------------------------------------
입력값 선언 기억되는 값
----------------------------------------------------------
1.234 NUMBER(4,5) 오류
1.23 NUMBER(3,5) 오류
0.0123 NUMBER(3,4) 0.0123
0.01234 NUMBER(4,5) 0.01234
0.001234 NUMBER(3,5) 0.00123