[每日一题] OCP1z0-047 :2013-08-10 INTERVAL DAY TO SECOND........................................
2013-08-10 23:52
796 查看
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/9887591
正解答案是:B引用akagea同学的解释http://www.itpub.net/thread-1808740-1-1.html“根据题意要求,需要存储的是一个时间间隔的数据,且方便加减,所以首先排除timestamp类型。然后题目要求最大的周期是30天,所以yeartomonth排除,因为该项只能精确到月。然后就剩下B“官方文档解释:
Specify
hr@MYDB>hr@MYDB>SELECTlast_name,sysdate,hire_date,EXTRACT(YEARFROM(SYSDATE-hire_date)YEARTOMONTH)2||'years'3||EXTRACT(MONTHFROM(SYSDATE-hire_date)YEARTOMONTH)4||'months'"Interval"5FROMemployees;LAST_NAMESYSDATEHIRE_DATEInterval---------------------------------------------------------------------------------------------------Dilly10-AUG-1313-AUG-058years0monthsGates10-AUG-1311-JUL-067years1monthsPerkins10-AUG-1319-DEC-075years8monthsBell10-AUG-1304-FEB-049years6months中间结果省略Bull10-AUG-1320-FEB-058years6monthsDellinger10-AUG-1324-JUN-067years2monthsCabrio10-AUG-1307-FEB-076years6monthsChung10-AUG-1314-JUN-058years2months107rowsselected.
Specifythisdatatypeasfollows:
Specifythe
oe@MYDB>colORDER_DATEfora30oe@MYDB>colIntervalfora30oe@MYDB>SELECTorder_id,sysdate,order_date,2EXTRACT(DAYFROM(SYSDATE-order_date)DAYTOSECOND)3||'days'4||EXTRACT(HOURFROM(SYSDATE-order_date)DAYTOSECOND)5||'hours'"Interval"6FROMorders;ORDER_IDSYSDATEORDER_DATEInterval----------------------------------------------------------------------------------244210-AUG-1328-JUL-9002.22.59.662632AM8414days21hours244310-AUG-1328-JUL-9003.34.16.562632AM8414days20hours244510-AUG-1328-JUL-9005.34.38.362632AM8414days18hours241810-AUG-1321-MAR-9608.18.21.862632AM6351days15hours241510-AUG-1330-MAR-9705.34.50.545196AM5977days18hours235710-AUG-1309-JAN-9812.19.44.123456PM5692days11hours省略中间结果244710-AUG-1327-JUL-0010.59.10.223344PM4762days0hours244110-AUG-1302-AUG-0001.22.48.734526AM4756days22hours1310-AUG-1304-AUG-1309.32.52.000000PM6days2hours13010-AUG-1304-AUG-1310.55.36.000000PM6days0hours107rowsselected.
Specifythe
gyj@MYDB>CREATETABLETIME_TEST(2TIMEDATE,3TIMESTPTIMESTAMP(3),4TIMESTP_TZTIMESTAMP(3)WITHTIMEZONE,5TIMESTP_LTZTIMESTAMP(3)WITHLOCALTIMEZONE);Tablecreated.
2、插入数据gyj@MYDB>INSERTINTOTIME_TESTVALUES(SYSDATE,SYSDATE,SYSDATE,SYSDATE);1rowcreated.gyj@MYDB>commit;Commitcomplete.
3、查询dbtimezone和sessiontimezone的值gyj@MYDB>selectdbtimezone,sessiontimezonefromdual;DBTIMESESSIONTIMEZONE-----------------------------------------------------------------+08:00+08:00
4、查看数据的值gyj@MYDB>colTIMESTPfora30gyj@MYDB>colTIMESTP_TZfora35gyj@MYDB>colTIMESTP_LTZfora30gyj@MYDB>SELECT*FROMTIME_TEST;TIMETIMESTPTIMESTP_TZTIMESTP_LTZ-----------------------------------------------------------------------------------------------------------10-AUG-1310-AUG-1311.09.16.000PM10-AUG-1311.09.16.000PM+08:0010-AUG-1311.09.16.000PM
5、修改会话的time_zone值gyj@MYDB>altersessionsettime_zone='+11:00';Sessionaltered.
6、查看结果gyj@MYDB>SELECT*FROMTIME_TEST;TIMETIMESTPTIMESTP_TZTIMESTP_LTZ-----------------------------------------------------------------------------------------------------------10-AUG-1310-AUG-1311.09.16.000PM10-AUG-1311.09.16.000PM+08:0011-AUG-1302.09.16.000AM
从上面的实验可以看出二者的去区别,当session的时区由8变为11是,时间增加三个小时别外可以参考这篇文章:http://space.itpub.net/9765498/viewspace-539881
QQ:252803295
学习交流QQ群:
DSI&CoreSearchⅠ群:127149411(技术:已满)
DSI&CoreSearchⅡ群:177089463(技术:未满)
DSI&CoreSearchⅢ群:284596437(技术:未满)
DSI&CoreSearchⅣ群:192136702(技术:未满)
DSI&CoreSearchⅤ群:285030382(闲聊:未满)
MAIL:oracledba_cn@hotmail.com
BLOG:http://blog.csdn.net/guoyjoe
WEIBO:http://weibo.com/guoyJoe0218
ITPUB:http://www.itpub.net/space-uid-28460966.html
OCM:http://education.oracle.com/education/otn/YGuo.HTM
正解答案是:B引用akagea同学的解释http://www.itpub.net/thread-1808740-1-1.html“根据题意要求,需要存储的是一个时间间隔的数据,且方便加减,所以首先排除timestamp类型。然后题目要求最大的周期是30天,所以yeartomonth排除,因为该项只能精确到月。然后就剩下B“官方文档解释:
INTERVALYEARTOMONTHDatatype
INTERVAL
YEAR
TO
MONTHstoresaperiodoftimeusingthe
YEARand
MONTHdatetimefields.Thisdatatypeisusefulforrepresentingthedifferencebetweentwodatetimevalueswhenonlytheyearandmonthvaluesaresignificant.
Specify
INTERVAL
YEAR
TO
MONTHasfollows:
INTERVALYEAR[(year_precision)]TOMONTH
DatetimeandIntervalExamples
Thefollowingexampleshowshowtodeclaresomedatetimeandintervaldatatypes.INTERVALDAYTOSECONDDatatype
INTERVAL
DAY
TO
SECONDstoresaperiodoftimeintermsofdays,hours,minutes,andseconds.Thisdatatypeisusefulforrepresentingtheprecisedifferencebetweentwodatetimevalues.
Specifythisdatatypeasfollows:
INTERVALDAY[(day_precision)]
TOSECOND[(fractional_seconds_precision)]
TIMESTAMPWITHTIMEZONEDatatype
TIMESTAMP
WITH
TIME
ZONEisavariantof
TIMESTAMPthatincludesatimezoneoffsetinitsvalue.Thetimezoneoffsetisthedifference(inhoursandminutes)betweenlocaltimeandUTC(CoordinatedUniversalTime—formerlyGreenwichMeanTime).Thisdatatypeisusefulforcollectingandevaluatingdateinformationacrossgeographicregions.
Specifythe
TIMESTAMP
WITH
TIME
ZONEdatatypeasfollows:
TIMESTAMP[(fractional_seconds_precision)]WITHTIMEZONE
TIMESTAMPWITHLOCALTIMEZONEDatatype
TIMESTAMP
WITH
LOCAL
TIME
ZONEisanothervariantof
TIMESTAMPthatincludesatimezoneoffsetinitsvalue.Itdiffersfrom
TIMESTAMP
WITH
TIME
ZONEinthatdatastoredinthedatabaseisnormalizedtothedatabasetimezone,andthetimezoneoffsetisnotstoredaspartofthecolumndata.Whenauserretrievesthedata,Oraclereturnsitintheuser'slocalsessiontimezone.Thetimezoneoffsetisthedifference(inhoursandminutes)betweenlocaltimeandUTC(CoordinatedUniversalTime—formerlyGreenwichMeanTime).Thisdatatypeisusefulfordisplayingdateinformationinthetimezoneoftheclientsysteminatwo-tierapplication.
Specifythe
TIMESTAMP
WITH
LOCAL
TIME
ZONEdatatypeasfollows:
TIMESTAMP[(fractional_seconds_precision)]WITHLOCALTIMEZONE
timestampwithlocaltimezone和timesatampwithtimezone的最大区别就是,前者在用户提交时间给数据库的时,该类型会转换成数据库的时区来保存数据,即数据库保存的时间是数据库本地时区,当别的用户访问数据库时oracle会自动将该时间转换成当前客户端的时间。实验:1、创建表
2、插入数据
3、查询dbtimezone和sessiontimezone的值
4、查看数据的值
5、修改会话的time_zone值
6、查看结果
从上面的实验可以看出二者的去区别,当session的时区由8变为11是,时间增加三个小时别外可以参考这篇文章:http://space.itpub.net/9765498/viewspace-539881
QQ:252803295
学习交流QQ群:
DSI&CoreSearchⅠ群:127149411(技术:已满)
DSI&CoreSearchⅡ群:177089463(技术:未满)
DSI&CoreSearchⅢ群:284596437(技术:未满)
DSI&CoreSearchⅣ群:192136702(技术:未满)
DSI&CoreSearchⅤ群:285030382(闲聊:未满)
MAIL:oracledba_cn@hotmail.com
BLOG:http://blog.csdn.net/guoyjoe
WEIBO:http://weibo.com/guoyJoe0218
ITPUB:http://www.itpub.net/space-uid-28460966.html
OCM:http://education.oracle.com/education/otn/YGuo.HTM
相关文章推荐
- [每日一题] OCP1z0-047 :2013-08-10 INTERVAL DAY TO SECOND........................................30
- OCP-1Z0-051 第22题 INTERVAL DAY TO SECOND的使用方法
- [每日一题] OCP1z0-047 :2013-08-22 正则表达式---[^Ale|ax.r$]'....................................9
- [每日一题] OCP1z0-047 :2013-08-09 非相关子查询的定义................................................29
- [每日一题] OCP1z0-047 :2013-08-18 禁用启用约束――主键与外键 ..................................61
- [每日一题] OCP1z0-047 :2013-08-24 FLASHBACK—TABLE/PRIMARY KEY(FOREIGN KEY?)......98
- interval day to second和interval…
- [每日一题] OCP1z0-047 :2013-08-05 SELECT语句――列的表达式.....................................25
- [每日一题] OCP1z0-047 :2013-08-12 view视图的描述哪些是正确的?...............................32
- [每日一题] OCP1z0-047 :2013-08-13 Flashback Version Query.....................................3
- [每日一题] OCP1z0-047 :2013-08-28 DELETE........................................................
- 使用INTERVAL DAY TO SECOND类型
- [每日一题] OCP1z0-047 :2013-08-15 描述GROUPING 函数 .....................................
- [每日一题] OCP1z0-047 :2013-08-08 相关子查询中EXISTS的使用.....................................28
- [每日一题] OCP1z0-047 :2013-08-11 描述层次查询(hierarchical query)........................31
- [每日一题] OCP1z0-047 :2013-08-16 merge的用法............................................
- [每日一题] OCP1z0-047 :2013-08-19 DATE TYPE............................................
- [每日一题] OCP1z0-047 :2013-08-21 正则表达式---REGEXP_INSTR....................................91
- [每日一题] OCP1z0-047 :2013-08-25 正则表达式REGEXP_LIKE-----‘harddisks’.................108
- [每日一题] OCP1z0-047 :2013-08-26 TIMESTAMP WITH LOCAL TIME ZONE....................112