Oracle INTERVAL DAY TO SECOND数据类型

INTERVAL DAY TO SECOND数据类型 

Oracle语法: 
INTERVAL '{ integer | integer time_expr | time_expr }' 
{ { DAY | HOUR | MINUTE } [ ( leading_precision ) ] 
| SECOND [ ( leading_precision [, fractional_seconds_precision ] ) ] } 
[ TO { DAY | HOUR | MINUTE | SECOND [ (fractional_seconds_precision) ] } ] 

leading_precision值的范围是0到9, 默认是2. time_expr的格式为:HH[:MI[:SS[.n]]] or MI[:SS[.n]] or SS[.n], n表示微秒. 
该类型与INTERVAL YEAR TO MONTH有很多相似的地方,建议先看INTERVAL YEAR TO MONTH再看该文. 

范围值: 
HOUR:    0 to 23 
MINUTE: 0 to 59 
SECOND: 0 to 59.999999999 

eg: 
INTERVAL '4 5:12:10.222' DAY TO SECOND(3) 
表示: 4天5小时12分10.222秒 

INTERVAL '4 5:12' DAY TO MINUTE 
表示: 4天5小时12分 

INTERVAL '400 5' DAY(3) TO HOUR 
表示: 400天5小时, 400为3为精度,所以"DAY(3)", 注意默认值为2. 

INTERVAL '400' DAY(3) 
表示: 400天 

INTERVAL '11:12:10.2222222' HOUR TO SECOND(7) 
表示: 11小时12分10.2222222秒 

INTERVAL '11:20' HOUR TO MINUTE 
表示: 11小时20分 

INTERVAL '10' HOUR 
表示: 10小时 

INTERVAL '10:22' MINUTE TO SECOND 
表示: 10分22秒 

INTERVAL '10' MINUTE 
表示: 10分 

INTERVAL '4' DAY 
表示: 4天 

INTERVAL '25' HOUR 
表示: 25小时 

INTERVAL '40' MINUTE 
表示: 40分 

INTERVAL '120' HOUR(3) 
表示: 120小时 

INTERVAL '30.12345' SECOND(2,4)     
表示: 30.1235秒, 因为该地方秒的后面精度设置为4, 要进行四舍五入. 

INTERVAL '20' DAY - INTERVAL '240' HOUR = INTERVAL '10-0' DAY TO SECOND 
表示: 20天 - 240小时 = 10天0秒 

你可能感兴趣的:(Oracle INTERVAL DAY TO SECOND数据类型)