日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

int类型存小数 mysql_MySQL面试题-数据类型

發布時間:2024/10/12 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 int类型存小数 mysql_MySQL面试题-数据类型 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

mysql有哪些數據類型

· 1、整數類型,包括TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT,分別表示1字節、2字節、3字節、4字節、8字節整數。任何整數類型都可以加上UNSIGNED屬性,表示數據是無符號的,即非負整數。

長度:整數類型可以被指定長度,例如:INT(11)表示長度為11的INT類型。長度在大多數場景是沒有意義的,它不會限制值的合法范圍,只會影響顯示字符的個數,而且需要和UNSIGNED ZEROFILL屬性配合使用才有意義。

例子,假定類型設定為INT(5),屬性為UNSIGNED ZEROFILL,如果用戶插入的數據為12的話,那么數據庫實際存儲數據為00012。

· 2、實數類型,包括FLOAT、DOUBLE、DECIMAL。

DECIMAL可以用于存儲比BIGINT還大的整型,能存儲精確的小數。

而FLOAT和DOUBLE是有取值范圍的,并支持使用標準的浮點進行近似計算。

計算時FLOAT和DOUBLE相比DECIMAL效率更高一些,DECIMAL你可以理解成是用字符串進行處理。

· 3、字符串類型,包括VARCHAR、CHAR、TEXT、BLOB
VARCHAR用于存儲可變長字符串,它比定長類型更節省空間。

VARCHAR使用額外1或2個字節存儲字符串長度。列長度小于255字節時,使用1字節表示,否則使用2字節表示。

VARCHAR存儲的內容超出設置的長度時,內容會被截斷。

CHAR是定長的,根據定義的字符串長度分配足夠的空間。

CHAR會根據需要使用空格進行填充方便比較。

CHAR適合存儲很短的字符串,或者所有值都接近同一個長度。

CHAR存儲的內容超出設置的長度時,內容同樣會被截斷。

使用策略:

對于經常變更的數據來說,CHAR比VARCHAR更好,因為CHAR不容易產生碎片。

對于非常短的列,CHAR比VARCHAR在存儲空間上更有效率。

使用時要注意只分配需要的空間,更長的列排序時會消耗更多內存。

盡量避免使用TEXT/BLOB類型,查詢時會使用臨時表,導致嚴重的性能開銷。

· 4、枚舉類型(ENUM),把不重復的數據存儲為一個預定義的集合。

有時可以使用ENUM代替常用的字符串類型。

ENUM存儲非常緊湊,會把列表值壓縮到一個或兩個字節。

ENUM在內部存儲時,其實存的是整數。

盡量避免使用數字作為ENUM枚舉的常量,因為容易混亂。

排序是按照內部存儲的整數

· 5、日期和時間類型,盡量使用timestamp,空間效率高于datetime,

用整數保存時間戳通常不方便處理。

如果需要存儲微妙,可以使用bigint存儲。

看到這里,這道真題是不是就比較容易回答了。

總結

以上是生活随笔為你收集整理的int类型存小数 mysql_MySQL面试题-数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。