PostgreSQL DB의 숫자형식 Data Type을 알아보자. 통상적으로 사용되는 타입들의 자세한 설명은 Pass 하도록 하겠다.

 

: 정수형식(smallint, integer, bigint)

형식 크기 범위 별칭
smallint 2 바이트 -32768에서 +32767 int2
integer 4 바이트 -2147483648에서 +2147483647 int, int4
bigint 8 바이트 -9223372036854775808에서 +9223372036854775807 int8

 

: 정밀숫자형(numeric, decimal)

타입 크기 특징 범위 별칭
numeric 가변 사용자 지정, 정확 소수점 131072 자리까지 소수점 아래는 16,383 자리까지 decimal

   ▶ numeric(precision, scale)

      - precision(전체자리수) : scale(소수부) 포함 전체 숫자의 길이.

        * 지정된 길이보다 정수부(+소수점) 길이가 크면 Error.   

      - scale(소수부) : 소수부의 최대 길이.

        * 지정된 길이보다 소수점이 크면 반올림.       

   ▶ numeric(precision)

       - scale(소수부)를 지정하지 않고 사용가능하다. 단, 이 경우 소수점 존재데이터를 Insert할 경우 반올림처리된다.

         예) numeric(4) - 1000.9 insert

               = 결과 : 1001

       - 성능측면에서 굳이 소수점을 사용할께 아니라면 정수형식 type을 사용.

       

: 부동소수점(numeric, decimal)

형식 크기 특징 범위 별칭
real 4 바이트 가변 정밀도, 부정확 최소 6 자리의 정밀도 (적어도 1E-37에서 1E + 37) float4
double precision 8 바이트 가변 정밀도, 부정확 최소 15 자리의 정밀도 ( 1E-307에서 1E + 308) float8

 * 정해진 타입의 길이내에서 소수점이 사용가능하며, 자리수 초과시 반올림 처리된다.

 

+ Recent posts