84669 人学习
152542 人学习
20005 人学习
5487 人学习
7821 人学习
359900 人学习
3350 人学习
180660 人学习
48569 人学习
18603 人学习
40936 人学习
1549 人学习
1183 人学习
32909 人学习
mysql数据库
时间都是近期的
推荐题主看看这篇帖子,总结的不错 选择合适的 MySQL 日期时间类型来存储你的时间
先搜索下
这里回复很详细了
timestamp相比于datetime的优势:
所占空间小,timestamp占4字节,而datetime占8字节;
包含时区信息,如果日后修改了时区的话,timestamp所表示的时间会随时区而变化,而datetime不会。
timestamp的劣势:
只能表示从1970年到2038年的时间,而datetime不受此限制。
性能方面比较,不能一概而论,timestamp虽然是纯数字,计算要快一些,但人类不可读,还必须要经过函数转化,datetime是字符串类型,人类肉眼直接可读,虽然计算加减乘除时要经过一道转化。
对于小应用来讲,空间不必考虑,性能不必考虑,时区都是北京时间,直接使用datetime就好了,不必纠结。
结论:永远使用datetime来表示时间,决不使用timestamp,除非你有明确的理由,或者你知道自己在干什么。
两种类型都是存放时间的,至于内存占用和效率的区别在这里就不说了,一般应用中这点差异也对你系统没什么本质上的影响,所以我的观点是业务指向。datetime和timestamp比起来,timestamp类型的字段在数据库记录发生改变的时候(update)会自动更新这个字段的值,而datetime需要手动去设置才会改变。从业务角度进行筛选知道这点区别就行了,一般create time选datetime,update time选timestamp
推荐题主看看这篇帖子,总结的不错 选择合适的 MySQL 日期时间类型来存储你的时间
先搜索下
这里回复很详细了
timestamp相比于datetime的优势:
所占空间小,timestamp占4字节,而datetime占8字节;
包含时区信息,如果日后修改了时区的话,timestamp所表示的时间会随时区而变化,而datetime不会。
timestamp的劣势:
只能表示从1970年到2038年的时间,而datetime不受此限制。
性能方面比较,不能一概而论,timestamp虽然是纯数字,计算要快一些,但人类不可读,还必须要经过函数转化,datetime是字符串类型,人类肉眼直接可读,虽然计算加减乘除时要经过一道转化。
对于小应用来讲,空间不必考虑,性能不必考虑,时区都是北京时间,直接使用datetime就好了,不必纠结。
结论:永远使用datetime来表示时间,决不使用timestamp,除非你有明确的理由,或者你知道自己在干什么。
两种类型都是存放时间的,至于内存占用和效率的区别在这里就不说了,一般应用中这点差异也对你系统没什么本质上的影响,所以我的观点是业务指向。
datetime和timestamp比起来,timestamp类型的字段在数据库记录发生改变的时候(update)会自动更新这个字段的值,而datetime需要手动去设置才会改变。
从业务角度进行筛选知道这点区别就行了,一般create time选datetime,update time选timestamp