scs653298 发表于 2018-9-14 13:12:49

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秒

页: [1]
查看完整版本: Oracle INTERVAL DAY TO SECOND数据类型