欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

时间字段的类型用时间戳整型还是时间类型

程序员文章站 2024-04-05 23:02:19
...

不管做什么项目,必须都得接触的东西就是时间类型。现在用时间戳存储日期数据(整型存储)已经是业界很平常的的事情,网上各大游戏公司,各大开源都是采取整型时间戳存储。整数存日期好处很多,程序判断直读,扩展性好,随意可转换xml,json等格式。不过有一

不管做什么项目,必须都得接触的东西就是时间类型。现在用时间戳存储日期数据(整型存储)已经是业界很平常的的事情,网上各大游戏公司,各大开源都是采取整型时间戳存储。整数存日期好处很多,程序判断直读,扩展性好,随意可转换xml,json等格式。不过有一个最大的缺点就是查数据库不直观,也就是说我们用管理工具打开数据库的时候,看到的是一堆数字,维护数据不方便。为了解决这一缺陷,我找到一方法,先上代码:

select *,DATE_FORMAT(FROM_UNIXTIME(datetimed/1000),"%Y-%m") from `testTable`

testTable是表名,datetimed是表里一个整型字段。本人用的是毫秒存储,但是mysql的FROM_UNIXTIME方法只能转秒,所以就/1000来计算。

用过织梦,Discuz开源的朋友应该都有过看到一堆头痛的整型时间的经历吧。这段mysql语句粘到管理工具运行就可以直观的看到日期结果了。

但是如果还有人觉得这样麻烦,我无话可说,毕竟有些做小项目的人不需要考虑扩展,也用不上对象格式转换。后台的操作基本用不上Date,都是把Date转成整型再计算,干嘛浪费时间精力存一个不方便转格式的Date型。众多大型开源都使用时间戳,允分证明了时间戳存储的优势。为了一个快一步的直观而放弃扩展,这值吗?