더북(TheBook)

실수형

DECIMAL[(M, D)] [UNSIGNED] [ZEROFILL]

DECIMAL은 고정 소수 실수형으로, M은 전체 자릿수를, D는 소수점 이하 자릿수를 의미합니다. M은 소수점 이하 자릿수를 포함해 최대 65자리까지 저장할 수 있습니다. M을 생략하면 기본으로 10이 적용됩니다. D는 최대 30자리까지 지정 가능합니다. D를 명시하지 않거나 0을 명시하면 소수점 이하 숫자는 없다는 뜻입니다. DECIMAL 대신 DEC, FIXED, NUMERIC을 써도 되며, 모두 DECIMAL과 같은 데이터 타입입니다. 하지만 혼란스러울 수 있으니 앞으로는 DECIMAL만 사용합시다.

 

DOUBLE[(M, D)] [UNSIGNED] [ZEROFILL]

DOUBLE은 부동 소수 실수형으로, MD는 각각 전체 자릿수와 소수점 이하 자릿수를 의미합니다. DOUBLEDECIMAL과 달리 근사값을 저장합니다. 따라서 입력하는 값의 자릿수가 15자리를 넘어가면 부정확한 값이 저장됩니다. DOUBLE은 1.7976931348623157E+308에서 -2.2250738585072014E-308, 0, 2.2250738585072014E-308에서 1.7976931348623157E+308까지의 실수를 저장할 수 있습니다.

DOUBLE보다 작은 크기의 값을 저장하는 FLOAT도 있습니다.

숫자형 데이터 타입 중 정수형과 실수형을 살펴봤는데, 이 외에도 몇 가지가 더 있습니다. 그러나 모든 데이터 타입을 소개하지 않은 이유는 불필요하기 때문입니다. SQL에서 일반적인 숫자 값을 저장하고 연산하는 데는 이 정도면 충분합니다. 오히려 이 정도도 많다고 볼 수 있죠.

주로 실수형은 정확한 값을 저장하는 DECIMAL을, 정수형은 INT를 사용하면 됩니다. 단, 정수형은 입력하려는 값의 크기에 따라 다른 정수형을 사용해도 됩니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.