如何只存储时间;不是日期和时间?

在一个字段中,我不需要存储日期时间对,即标准的Oracle日期。


01/10/2009 22:10:39

但是只有时间


22:10:39

我认为可以节省磁盘空间(我有200万行)或提供更快的处理速度。


梵蒂冈之花
浏览 737回答 3
3回答

森栏

您可以尝试INTERVAL DAY TO SECOND数据类型,但它不会为您节省任何磁盘空间...尽管它非常适合此目的。create table t1 (time_of_day interval day (0) to second(0));insert into t1 values (TO_DSINTERVAL('0 23:59:59'));select date '2009-05-13'+time_of_dayfrom   t1;虽然11个字节。

慕运维8079593

您可以像这样从字符串中提取日期中的时间:to_char(sysdate,'HH.MI.SS')但是没有唯一的时间数据类型可以帮助您节省空间。

茅侃侃

您将节省几Mb的磁盘空间(如今已无用),并且性能几乎没有提高。您可以NUMBER按照建议使用类型列来存储自午夜以来的秒数,只是不要忘记约束。(您可能会NUMBER(5, 0)根据存储的值使用1-3个字节,而不是一DATE列使用7个字节的常量)
打开App,查看更多内容
随时随地看视频慕课网APP