數值類型
| 類型 | 內存空間大小 | 表示範圍 | 説明 |
|---|---|---|---|
| tinyint | 1byte | 有符號 -128~ 127
無符號 0~255 |
特小型整數(可以存放人類的年齡) |
| smallint | 2byte(16bit) | 有符號:-32768~32767
無符號 0~65535 |
小型整數 |
| mediumint | 3byte | 中型整數 | |
int/integer |
4byte | 整數 | |
| bigint | 8byte | 大型整數 | |
| float | 4byte | 單精度 | |
double |
8byte | 雙精度 | |
| decimal | 第一個參數+2 | 常用於價格decimal(10,2)表示最多8位整數且一定保證2位小數 |
字符類型
存儲字符系列的類型
| 類型 | 字符長度(字節) | 説明 |
|---|---|---|
char |
0-255 | 定長字符串,最多存儲255個字符;當指定字段為char(n)
此列數據中最長為n個字符,如果添加數據為a個少於n,會自動補充n-a個'\u0000' |
varchar |
0-2^16-1 | 可變長度字符串,此類型最大長度為2^16-1 |
| tinyblob | 0-255 | 存取二進制字符串 |
| blob | 0-2^16-1 | 存取二進制字符串 |
| mediumblob | 0-2^24-1 | 存取二進制字符串 |
| longblob | 0-2^32-1 | 存取二進制字符串 |
| tinytext | 0-255 | 文本數據(字符串) |
| text | 0-2^16-1 | 文本數據(字符串) |
| mediuntext | 0-2^24-1 | 文本數據(字符串) |
longtext |
0-2^32-1 | 文本數據(字符串) |
日期類型
因為很多場景需要基於日期進行查詢某個時間段的數據,這種類型就應運而生了。
| 類型 | 格式 | 説明 |
|---|---|---|
| date | 2022-05-30 | 日期 只存儲年月日 |
| time | 12:00:00 | 時間 只存儲時間 |
datetime |
2022-05-30 12:00:00 | 日期+時間 |
| timestamp | 20220530120000 | 日期+時間(時間戳) |
參考:bilibili