1
Js 2012-08-26 14:12:49 +08:00 1
signed int和timestamp没区别, 4字节,1970.1.1~2038.1.19
datetime和上面的区别不大,8字节, 没范围 date就是纯年月日的日期, 3字节 time就是纯时分秒的时间, 3字节 |
2
lukydd 2012-08-26 18:59:48 +08:00
没什么特殊需求就用unix时间戳吧...
|
3
AlloVince 2012-08-26 20:02:26 +08:00 1
datetime和date是人直接可以识别的格式,方便DBA,时间戳还需要再进行一次转换,只是存储空间占用稍小。
性能上看看这篇评测,使用转换函数进行检索时性能会有一个比较大的下滑,当然你可以选择用非MySQL的方式转换时间,这会带来额外的工作量。 http://gpshumano.blogs.dri.pt/2009/07/06/mysql-datetime-vs-timestamp-vs-int-performance-and-benchmarking-with-myisam/ 我在项目中一般都会用datetime,时区统一为UTC |
4
yoyicue 2012-08-26 20:20:46 +08:00 1
亦在项目中一般使用 datetime,时区统一为 UTC
一般函数 return 也是 datetime 优势: 方便和 pytz 做时区转换 方便可读的时间加减法 |
5
breestealth 2012-08-26 20:58:18 +08:00
用int型就是典型的时间换空间的做法。而且不能使用数据库提供的时间计算函数,在某些情况下比较麻烦。
|