MySQL设计表时有关列类型的选择

2018-09-19  本文已影响6人  老衲灬

1、浮点型数据

①表示法:浮点型用科学计数法,节省更多的空间和时间。
语法:aEb 代表a*10^b
示例:

1.23E+10     表示  1.23乘以10的10次方(1.23x10^10)
4.773E-101   表示  4.773乘以10的负101次方(4.773x10^-101)

②精度选择:decimal、float、double相比,decimal更精确
选择:对数据的精度要求比较高,则选择定点数decimal类型
场景:涉及资金用decimal(注:decimal小数位一般2位如果没有小数会用0自动补充)
余额:money decimal(10,2)
价格:money decimal(10,2)

2、时间型数据类型的选择

①可选择int类型:int比datetime更节省空间(int4个字节,datetime8个字节)
②选择datetime类型:int同timestamp最大存储时间为2038年,而datetime的最大存储时间要大的多。
数据表中时间存储为int类型和datetime类型读取转换对比:



日期转时间戳函数如下:


3、单选类型的选择

明确:整型的计算效率比字符串快


4、IP类型的存储

192.192.192.192 15个字符 = 15字节
如果用varchar和char都是用15个字节,而int类型只需要占4个字节
PHP中IP地址转换整型:

上一篇下一篇

猜你喜欢

热点阅读