84669 人學習
152542 人學習
20005 人學習
5487 人學習
7821 人學習
359900 人學習
3350 人學習
180660 人學習
48569 人學習
18603 人學習
40936 人學習
1549 人學習
1183 人學習
32909 人學習
像这样 1476355731 的数字
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
我通常存时间戳都是用int(11),基本上时间戳的长度不会变的,没有明显弊病的,请放心使用。
优点:数据量大的时候如果需要以该字段作为查询条件的时候查询速度会快一点(在同等条件下+合理索引情况下);缺点:查询结果不直观,需要二次处理。不过这个几乎可以忽略,如果是在客户端用sql查询的时候,mysql自带了UNIX_TIMESTAMP和FROM_UNIXTIME的转换函数;如果是程序处理的话,把时间戳转换成日期对象并不是什么特别麻烦的事情。
但要注意的是:如果用int来存储时间戳的话,请注意int值的最大值范围。
有些人真是这么做的,可能是觉得日期类型计算太麻烦了,不如+306060这样简单。
数据库内部就是按照时间戳的机制保存的,之所以单独定出Date类型,个人考虑是基于开发便利性的,否则保存为数字类型,所有的日期运算的函数都得自己实现。
我通常存时间戳都是用int(11),基本上时间戳的长度不会变的,没有明显弊病的,请放心使用。
优点:数据量大的时候如果需要以该字段作为查询条件的时候查询速度会快一点(在同等条件下+合理索引情况下);缺点:查询结果不直观,需要二次处理。不过这个几乎可以忽略,如果是在客户端用sql查询的时候,mysql自带了UNIX_TIMESTAMP和FROM_UNIXTIME的转换函数;如果是程序处理的话,把时间戳转换成日期对象并不是什么特别麻烦的事情。
但要注意的是:如果用int来存储时间戳的话,请注意int值的最大值范围。
有些人真是这么做的,可能是觉得日期类型计算太麻烦了,不如+306060这样简单。
数据库内部就是按照时间戳的机制保存的,之所以单独定出Date类型,个人考虑是基于开发便利性的,否则保存为数字类型,所有的日期运算的函数都得自己实现。