梵蒂岡之花
2019-12-03 16:14:19
在一個字段中,我不需要存儲日期時間對,即標(biāo)準(zhǔn)的Oracle日期。01/10/2009 22:10:39但是只有時間22:10:39我認(rèn)為可以節(jié)省磁盤空間(我有200萬行)或提供更快的處理速度。
3 回答

森欄
TA貢獻(xiàn)1810條經(jīng)驗 獲得超5個贊
您可以嘗試INTERVAL DAY TO SECOND數(shù)據(jù)類型,但它不會為您節(jié)省任何磁盤空間...盡管它非常適合此目的。
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_day
from t1;
雖然11個字節(jié)。

慕運維8079593
TA貢獻(xiàn)1876條經(jīng)驗 獲得超5個贊
您可以像這樣從字符串中提取日期中的時間:
to_char(sysdate,'HH.MI.SS')
但是沒有唯一的時間數(shù)據(jù)類型可以幫助您節(jié)省空間。

茅侃侃
TA貢獻(xiàn)1842條經(jīng)驗 獲得超21個贊
您將節(jié)省幾Mb的磁盤空間(如今已無用),并且性能幾乎沒有提高。
您可以NUMBER
按照建議使用類型列來存儲自午夜以來的秒數(shù),只是不要忘記約束。
(您可能會NUMBER(5, 0)
根據(jù)存儲的值使用1-3個字節(jié),而不是一DATE
列使用7個字節(jié)的常量)
添加回答
舉報
0/150
提交
取消