目前,我正在使用PHP / MySQL从头开发一个开源Business Intelligence
软件的时间机器。
我的时间机器表被所有其他表使用,需要日期信息(例如订单,产品等),并且它们与time_id
绑定。所以它的MySQL表是这样的:
time_id | timestamp | day | week | month | quarter
1 1303689654 25 17 4 2
2 1303813842 26 17 4 2
...
订单表绑定如下:
order_id | time_id ...
3123 2
...
编辑:它类似于STAR SCHEMA。
问题是获得 TIME (13:45)信息。通常我不需要这个,但是像订单一样,有时几张桌子需要这个HOUR / MINUTE信息。
如何巧妙地解决这个问题?我有几个解决方案,但首先我想看看你的意见..
答案 0 :(得分:2)
为什么不直接在其他表中存储时间戳?
或者,如果您想保留日期表,只需将TIME
字段添加到需要它的其他表中。
答案 1 :(得分:0)
如果我理解你的时间戳,你可以去:
echo date('H:i.s',1303689654);
修改强>
你想做什么?重新阅读您的问题后,您可能正在寻找SQL中的JOIN关键字(brief tute)