메뉴 건너뛰기

2016.12.23 18:20

숫자형 데이터 타입

조회 수 5668 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
숫자형은 가장 기본적인 자료형으로서 말 그래도 숫자들을 저장하는 자료형입다.
숫자형의 기본적인 자료형은 정수형과 소수형 두가지로 나눌수있다.
정수형의 자료는 SIGNED 와 UNSIGNED 로 나눌수있다
SINGED는 부호를 가질수있는 수를 나타내고, UNSINGED는 부호가 없는 수를 나타낸다.

SIGNED - 음수,양수 모두 저장 가능
UNSIGNED - 양수만 저장 가능

* 종류 및 설명

------------------------------------------------------------------------------------
[자료형] [다룰수있는 범위] [저장에 필요한 BYTE 수]
------------------------------------------------------------------------------------
TINYINT SIGNED : -128 ~ 127 1 BYTE
UNSINGED : 0 ~ 255
------------------------------------------------------------------------------------
SMALLINT SIGNED : -32768 ~ 32767 2 BYTE
UNSIGNED : 0 ~ 65535
------------------------------------------------------------------------------------
MEDIUMINT SIGNED : -8388608 ~ 8388607 3 BYTE
UNSIGNED : 0 ~ 16777215
------------------------------------------------------------------------------------
INT SINGED : -2147483648 ~ 2147483647 4 BYTE
UNSIGNED : 0 ~ 4294967295
------------------------------------------------------------------------------------
INTEGER INT 와 동일
------------------------------------------------------------------------------------
BIGINT SINGED : -9223372036854775808 ~
9223372036854775807
UNSIGNED : 0 ~ 18446744073709551615 8 BYTE
------------------------------------------------------------------------------------
FLOAT 최소값 : +-1.175494351E-38
최대값 : +-3.402823466E+38 4 BYTE
------------------------------------------------------------------------------------
BOUBLE 최소값 : +-2.2250738585072014E-308
최대값 : +-1.17976931348623157E+308 8 BYTE
------------------------------------------------------------------------------------
DOUBLE PRECISION DOUBLE 동일 8 BYTE
------------------------------------------------------------------------------------
REAL DOUBLE 동일 8 BYTE
------------------------------------------------------------------------------------
DECIMAL DOUBLE 동일 경우에따라
------------------------------------------------------------------------------------


* UNSIGNED 사용방법

mysql> create table kkk(
-> num tinyint,
-> count tinyint unsigned
-> );
Query OK, 0 rows affected (0.00 sec)

mysql> desc kkk;
+-------+---------------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------------+------+-----+---------+-------+
| num | tinyint(4) | YES | | NULL | |
| count | tinyint(3) unsigned | YES | | NULL | |
+-------+---------------------+------+-----+---------+-------+
2 rows in set (0.00 sec)


* AUTO_INCREMENT / ZEROFILL 이라는 속성하용하기

mysql> create table zzz (
->
-> num int(10) not null auto_increment,
-> count int zerofill,
-> primary key(num)
-> );
Query OK, 0 rows affected (0.00 sec)

mysql> desc zzz;
+-------+---------------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------------------------+------+-----+---------+----------------+
| num | int(10) | | PRI | NULL | auto_increment |
| count | int(10) unsigned zerofill | YES | | NULL | |
+-------+---------------------------+------+-----+---------+----------------+
2 rows in set (0.00 sec)


mysql> insert into zzz values ('55','55');
Query OK, 1 row affected (0.00 sec)

mysql> select * from zzz;
+-----+------------+
| num | count |
+-----+------------+
| 55 | 0000000055 |
+-----+------------+
1 row in set (0.00 sec)

ZEROFILL 로 정의된 필드에 값이 어떻게 입력되는지 확인하면 이 정의의 필요성을 알수
있을거라 생각됩니다. 
                                         

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved