[每日一题] OCP1z0-047 :2013-08-19 DATE TYPE
[每日一题] OCP1z0-047 :2013-08-19 DATE TYPE正确答案:A如下操作:1-d(表示2年0个月)gyj@MYDB>select interval '+02-00' year to month from dual;INTERVAL'+02-00'YEARTOMONTH---------------------------------------------------------------------------+02-002-c(TIMESTAMPWITH LOCAL TIME ZONE 显示的时候不带时区偏移量,以本地时区来显示时间)gyj@MYDB> gyj@MYDB> SELECTCAST('17-JUN-03' AS TIMESTAMP WITH LOCAL TIME ZONE) FROM dual;CAST('17-JUN-03'ASTIMESTAMPWITHLOCALTIMEZONE)---------------------------------------------------------------------------17-JUN-03 12.00.00.000000 AM3-a(TIMESTAMP WITHTIME ZONE 带有时区偏移量的值+08:00)gyj@MYDB>select TO_TIMESTAMP_TZ('2009-07-15 08:00:00 -08:00', 'YYYY-MM-DD HH24:MI:SS.FFTZH:TZM') from dual;TO_TIMESTAMP_TZ('2009-07-1508:00:00-08:00','YYYY-MM-DDHH24:MI:SS.FFTZH:TZM'---------------------------------------------------------------------------15-JUL-0908.00.00.000000000 AM +08:004-b(表示6天3小时30分16秒)gyj@MYDB>select interval '+06 03:30:16.000000' day to second from dual;INTERVAL'+0603:30:16.000000'DAYTOSECOND---------------------------------------------------------------------------+0603:30:16.000000INTERVAL数据类型可以是年-月(YEAR-MONTH)时间间隔类型,也可以是天-时间(DAY- TIME)数据类型。这些类型可以用一个字来表示,如日、时,也可以用一个范围表示,如果HOUR TO SECOND格式。这也是使用字符串表示类型,而不是选择整数表示的原因:描述INTERVAL数据类型时需要使用标点分融各段信息。时间间隔数据的各个字段中,除了SECOND字段,其它字段都是整数类型,而且如果这些非SECOND字段不是和一个字段,其精度为2。不过,对于SECOND字段而言,在定义时可以指定<秒字段小数部分的精度>,该精度指定了SECOND字段小数部分的位数。当SECOND字段不是和一个字段时,其在小数点之前的精度为两位。构成时间间隔的这些字段也受到公元纪年的制约。ANSI/ISO标准时间间隔数据类型YEAR:Years,constrained by implementation leading field prcisionMONTH:Monthswithin years constrained to 0-11DAY:Days,constrained by implementationleading field precisionHOUR:Hours withindays,constrained to 0-23MINUTE:Minuteswithin hours,constrained to 0-59SECOND:Secondwithin minutes,constrained to 0-59.999.**********************************************************INTERVAL YEAR TO MONTH数据类型Oracle语法:INTERVAL 'integer [- integer]' {YEAR | MONTH} [(precision)][TO {YEAR | MONTH}]该数据类型常用来表示一段时间差, 注意时间差只精确到年和月. precision为年或月的精确域, 有效范围是0到9, 默认值为2.eg:INTERVAL '123-2' YEAR(3) TO MONTH表示: 123年2个月,"YEAR(3)" 表示年的精度为3, 可见"123"刚好为3为有效数值, 如果该处YEAR(n), n<3就会出错, 注意默认是2.INTERVAL '123' YEAR(3)表示: 123年0个月INTERVAL '300' MONTH(3)表示: 300个月, 注意该处MONTH的精度是3啊.INTERVAL '4' YEAR表示: 4年, 同 INTERVAL '4-0' YEARTO MONTH 是一样的INTERVAL '50' MONTH表示: 50个月, 同 INTERVAL '4-2' YEAR TO MONTH 是一样INTERVAL '123' YEAR表示: 该处表示有错误, 123精度是3了, 但系统默认是2, 所以该处应该写成 INTERVAL '123' YEAR(3) 或"3"改成大于3小于等于9的数值都可以的INTERVAL '5-3' YEAR TO MONTH + INTERVAL '20' MONTH =INTERVAL '6-11' YEAR TO MONTH表示: 5年3个月 + 20个月 = 6年11个月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 TOMONTH有很多相似的地方,建议先看INTERVAL YEAR TO MONTH再看该文.范围值:HOUR: 0 to 23MINUTE: 0 to 59SECOND: 0 to 59.999999999eg: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秒TIMESTAMPWITH TIME ZONE 数据类型存储一个具有时区偏移的时间点。语法TIMESTAMP WITH TIME ZONE注释TIMESTAMP WITHTIME ZONE 值包含年、月、日、小时、分钟、秒、秒的小数部分以及在协调通用时间(CoordinatedUniversal Time,简称 UTC)前后的分钟数。小数存储到 6 个小数位。应用程序以字符串形式检索 TIMESTAMP WITH TIME ZONE 值所使用的格式由 timestamp_with_time_zone_format 选项设置控制。例如,根据timestamp_with_time_zone_format 选项设置的不同,TIMESTAMP WITHTIME ZONE 值2010/04/01T23:59:59.999999-6:00 可以2010/04/01 23:59:59 -06:00 或April 1, 2010 23:59:59.999999-06:00 形式返回给应用程序。TIMESTAMP WITHTIME ZONE 值需要 10 个存储字节。尽管 TIMESTAMP WITH TIME ZONE 数据类型的可接受日期范围与 DATE 类型相同(从 00上一个:oracle10g前期准备
下一个:oracle数据库导出并重新导入