想要了解取值范圍首先需要知道的是 bit 和 Byte 的概念
bit :位
二進制數系統中,位通常簡寫為 "b",也稱為比特,每個二進制數字 0 或 1 就是一個位(bit)。位是表示信息的最小單位,其中 8 bit 就稱為一個字節(Byte)。
Byte :字節
字節(Byte)是用於計量存儲容量的一種計量單位,是計算機中表示存儲空間最基本的容量單位,字節通常簡寫為 "B"。
bit 與 Byte
數據存儲是以“字節”(Byte)為單位,數據傳輸大多是以“位”(bit,又名“比特”)為單位,一個位就代表一個 0 或 1(即二進制),每8個位(bit,簡寫為b)組成一個字節(Byte,簡寫為B),是最小一級的信息單位。
取值范圍
tinyint、smallint、mediumint、int、bigint 分別占用 1、2、3、4、8字節,使用 8、16、24、32、64 位存儲空間。它們的有符號可以存儲的值的范圍從 -2N-1 到 2N-1-1,其中 N 是存儲空間的位數。
無符號是設置了 unsigned 屬性,表示不允許負值,這大致可以使正數的上限提高一倍。
類型 | 字節 | 位 | 有符號范圍 | 無符號范圍 |
tinyint | 1 | 8 | -128 ~ 127 | 0 ~ 255 |
smallint | 2 | 16 | -215 ~ 215-1 | 0 ~ 2*215-1 |
mediumint | 3 | 24 | -223 ~ 223-1 | 0 ~ 2*223-1 |
int | 4 | 32 | -231 ~ 231-1 | 0 ~ 2*231-1 |
bigint | 8 | 64 | -263 ~ 263-1 | 0 ~ 2*263-1 |