2014-09-30 72 views
0

我们是否可以对具有唯一列的表进行分区,该表具有存储在oracle中的时间戳Unix Epoch format基于Unix时代的Oracle范围分区时间戳

有很多选项我们有w.r.t到oracle分区,但我想知道我们如何分区一个在数据库级别存储了Unix Epoch时间戳的表。

由于此列在前端被引用,我们只想在此列上执行范围分区。

这就是表结构的样子。

Timestamp  number 
Reference id number 
Value   integer 

该表将存储一年的关键数据,时间戳列存储确切的unix时期时间戳。我们希望根据每个月的时间戳值将表分成12个分区。

这是我们如何使用下面的sql转换为日期格式的UNIX时间戳。

select (TO_DATE('1970-01-01','YYYY-MM-DD') + unix_timestamp/86400000) from dbname; 

回答

0

我相信Oracle以相同的方式存储时间值 - 自午夜以来秒数(小数部分秒)。精度高达纳秒 - 时间戳(9)。无论如何,无论它如何存储在内部都无关紧要。我会建议使用标准的TIMESTAMP数据类型。是的,可以在TIMESTAMP列上构建分区