资源描述
,*,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,第,5,章 日期时间函数及其运算,返回,目 录,日期时间的常量与变量,日期时间函数,日期时间函数的应用,日期时间型变量的算术运算,习题及参考答案,结束,返回,日期时间的常量与变量,返回,常量格式示例,1,格 式,说 明,示 例,dd-mmm-yyyy,日(,2,位),-,月份(英文),-,年(,4,位),15-AUG-1945,,,23-DEC-2008,dd-mmm-yy,日(,2,位),-,月份(英文),-,年(,2,位),15-AUG-45,,,23-DEC-95,mm/dd/yyyy,月份(,2,位),/,日(,2,位),/,年(,4,位),08/15/1945,,,12/23/1995,mm/dd/yy,月份(,2,位),/,日(,2,位),/,年(,2,位),08/15/45,,,12/23/95,dd.mm.yy yy,日(,2,位),.,月份(英文),.,年(,4,位),08.15.1945,,,12.23.95,dd.mm.yy,日(,2,位),.,月份(英文),.,年(,2,位),08.15.45,yyyy/mm/dd,年(,4,位),/,月(,2,位),/,日(,2,位),2008/07/07,yy/mm/dd,年(,2,位),/,月(,2,位),/,日(,2,位),08/08/15,yyddd,年(,2,位)日数(自元月,1,日算起),45227,,,95,yyyyddd,年(,4,位)日数(自元月,1,日算起),1945227,,,1995,返回,常量格式示例,2,格 式,说 明,示 例,q Q yyyy,季度,Q,年(,4,位),3Q1945,,,4Q1995,q Q yy,季度,Q,年(,2,位),3Q45,,,4Q95,mmm yyyy,月份(英文)年(,4,位),AUG1945 DEC1995,mmm yy,月份(英文)年(,2,位),AUG45DEC95,ww WK yyyy,周数“,WK”,年(,4,位),33 WK 1945,,,52 WK 1995,ww WK yy,周数“,WK”,年(,2,位),33 WK 45,,,52 WK 95,Monday,Tuesday,直接输入英文的星期几,Friday,Mon,Tue,Wed,直接输入星期几的英文缩写,FRI,January,February,直接输入英文月份,August,,,December,Jan,Feb,Mar,直接输入英文月份缩写,AUG,,,DEC,返回,常量格式示例,3,格 式,说 明,示 例,dd-mmm-yyyy hh:mm,日(,2,位),-,月(英文月份缩写),-,年(,4,位)时(,2,位),:,分(,2,位),11-AUG-1945 11:10,dd-mmm-yyyy hh:mm:ss,日(,2,位),-,月(英文月份缩写),-,年(,4,位)时(,2,位),:,分(,2,位),:,秒(,2,位),11-AUG-1945 11:10:35,dd-mmm-yyyy hh:mm:ss.ss,日(,2,位),-,月(英文月份缩写),-,年(,4,位)时(,2,位),:,分(,2,位),:,秒(,2,位),.,百分秒,11-AUG-1945 11:10:35.30,hh:mm,时(,2,位),:,分(,2,位),11:30,,,08:50,hh:mm:ss,时(,2,位),:,分(,2,位),:,秒(,2,位),11:08:05,,,08:15:25,hh:mm:ss.ss,时(,2,位),:,分(,2,位),:,秒(,2,位),.,百分秒,11:08:05.80,,,08:15:25.45,ddd hh:mm,日数 时(,2,位),:,分(,2,位),128 08:50,ddd hh:mm:ss,日数 时(,2,位),:,分(,2,位),:,秒(,2,位),128 08:50:30,ddd hh:mm:ss.ss,日数 时(,2,位),:,分(,2,位),:,秒(,2,位),.,百分秒,128 08:50:30.78,返回,日期时间型变量输入,/,输出格式示例,1,格式类型,说明,最小,w,最大,w,最大,d,一般格式,举例,输入,输出,DATEw,国际通用,9,9,40,dd-mmm-yy,28-OCT-90,10,11,dd-mmm-yyyy,28-OCT-1990,ADATEw,美国,8,8,40,mm/dd/yy,10/28/90,10,10,mm/dd/yyyy,10/28/1990,EDATEw,欧洲,8,8,40,dd.mm.yy,28.10.90,10,10,dd.mm.yyyy,28.10.1990,JDATEw,朱利安,5,5,40,yyddd,90301,返回,日期时间型变量输入,/,输出格式 示例,2,格式类型,说明,最小,w,最大,w,最大,d,一般格式,举例,输入,输出,SDATEw,可排序的,日期*,8,8,40,yy/mm/dd,90/10/28,10,10,yyyy/mm/dd,1990/10/28,QYRw,季度和年,4,6,40,q Q yy,4 Q 90,6,8,q Q yyyy,4 Q 1990,MOYRw,月和年,6,6,40,mmm yy,OCT 90,8,8,mmm yyyy,OCT 1990,WKYRw,星期和年,6,8,40,ww WK yy,43 WK 90,8,10,ww WK yyyy,43 WK 1990,返回,日期时间型变量输入,/,输出格式 示例,3,格式类型,说明,最小,w,最大,w,最大,d,一般格式,举例,输入,输出,WKDAYw,一周的天,2,2,40,周内天的英文名,SU,MONTHw,月,3,3,40,月的英文名,JAN,TIMEw,时间,5,5,40,hh:mm,01:02,TIMEw.d,10,10,40,16,hh:mm:ss.s,01:02:34.75,DTIMEw,天数和时间,1,1,40,dd hh:mm,20 08:03,DTIMEw.d,13,13,40,16,dd hh:mm:ss.s,20 08:03:00,DATETIMEw,日期和时间,17,17,40,dd-mmm-yyyy hh:mm,20-JUN-1990 08:03,DATETIMEw.d,22,22,40,16,dd-mmm-yyyy hh:mm:ss.s,20-JUN-1990,返回,日期时间函数,当前日期时间函数(,Current Date/Time,),4,个,日期的算术运算函数(,Date Arithmetic,),2,个,时间生成函数(,Date Creation,),6,个,日期提取函数(,Date Extraction,),11,个,时间间隔生成函数(,Time duration creation,),4,个,时间间隔提取函数(,Time duration Extraction,),8,个,与日期时间有关的转换函数,1,个,返回,日期时间函数的应用,返回,日期时间型变量的格式转换:日期型变量,数值型变量,返回,日期时间型变量的格式转换:数值型变量,日期型变量,返回,日期时间型变量的格式转换,-,对比,转换前,转换后,数值型转换成日期型变量的结果,对比,返回,日期时间型变量的格式转换,-,当前日期时间函数生成的字符型变量,$Date11,返回,计算新变量,-,转换变量类型,返回,日期时间变量的转换:,字符型,数值型,结果,返回,日期时间型变量的算术运算,返回,定义一个日期变量,输入日期数据,【,例,4】,返回,生成当前日期变量,返回,根据生日计算年龄,返回,提取日期元素素例题提取月份,返回,习题,5,1.,上网查询,为什么在,SPSS,的时间运算总是与,1582,年,10,月,14,日,24:00:00,(,10,月,15,日,0:00:00,)有关,即日期型数据转换成以这个时间点为起始点的秒数?,2.,定义一个日期变量,输入你们班级同学的生日,计算他们此时的年龄。,3.,计算你们班同学中几个人的生日在,10,月?,返回,习题第,1,题参考答案,在现在通行的历法记载上,全世界居然有十天没有任何人出生过,也没有任何人死亡过,也没有发生过大大小小值得纪念的人或事。这就是,1582,年,10,月,5,日至,10,月,14,日 事实上,目前世界通行的公历中,就有持续时间为,0,的,10,天,即公元,1582,年,10,月,5,日至,14,日。事情是这样的:,西方历法的第一次改革是罗马朱利乌斯,凯撒大帝于公元前,45,年亲自引进的。当时采用的数字是一年,365.25,天,于是朱利安历法成为最简单的历法:第一、二、三年都是,365,天,三年余下的,0.25,天给第四年,第四年就有,366,天,这就是闰年。于是重复,365,,,365,,,365,,,366,的周期,每年都是整数。但是,一个太阳年不刚好是,362.25,天,而是,362.242199,天,每年相差,11,分,14,秒,也就是朱利安历法中每年多算了,11,分钟,14,秒。由于误差不太大,头几年没什么关系,凯撒活着时影响还不大。但是,一年又一年,误差累积起来,朱利安历法就与实际的太阳年不合拍了。例如每年春分在,3,月,21,日前后,但几个世纪后,春分在朱利安历法上的日期越来越提前了,这对农民种地不方便,对教会确定复活节在哪一天也带来麻烦。由于朱利安历法是凯撒亲自制定的,上述情况对他的威信是一个沉重打击。,16,世纪时,教皇格利戈里八世进行了一次校正。因为到,16,世纪,每年,11,分,14,秒已经累积成,10,天,也就是历法上多了,10,天,这对于确定复活节造成严重困难,不得不采取措施补救。为此,格利戈里采取了解决此类难题的最古老最有效的策略,-,他召集一个委员会,任命一位聪明的主席,即杰出的耶稣会数学家克利斯多弗,克拉维斯(,Christopher Clavius,),要求委员会提出解决方案。委员会于,1587,年开始工作。克拉维斯委员会面临两个不同的问题,它用不同的方法进行解决。第一,朱利安历法现在走快了,10,天,必须拉回到与太阳年一致。克拉维斯建议用官方声明把这,10,天抹掉!教皇格利戈八世于,1582,年,2,月,24,日以教皇训令颁布,将,1582,年,10,月,5,日至,14,抹掉,于是这,10,天就消失了,一去不复返。,1582,年,10,月,4,日过完了,第二天已经是,10,月,15,日了,于是历法又回到与太阳年同步。,返回,当时以及后来有许多人对此感到惊愕,目瞪口呆,有人认为是荒唐、武断。,“,教皇一纸训令就能抹掉日历上的,10,天?,”,但是,这,10,天的确不存在了,这,10,天什么也没有发生,这,10,天根本就没过日子。如果你能找到当时的日记,,10,月,4,日记完后,下一页就是,10,月,15,日的事。用科学语言表达,这,10,天的持续时间为,0,。其实完全不必惊讶。太阳年、太阳日与自然现象有联系,至于某一天是什么日子,则是人为的,与给小孩起名字一样。我们可以不用公历,一年不分月,只叫第,1,天,第,2,天,,第,125,天,,到第,365,天,这是允许的。喜欢偶数的人可以发明一个,“,偶数日历,”,:,2,月,2,日,,2,月,4,日,4,月,2,日,12,月,30,日,,12,月,32,日,,,14,月,2,日,这也是允许的,只要一年,365,天或者,366,天就行。这再一次证明,在一个科学理论或体系中区分出由自然现象决定(因而必须符合实验)的部分和人为规定的部分是重要的。当然,这个决定对当时的社会生活也会有一定影响,例如出生在,10,月,5,日至,10,月,14,日的人在,1582,年找不到自己的生日,但与出生在,2,月,29,日的人相比,少过一年生日算不了什么。还有,那年,10,月份的工资、利息也会有问题,但不知那时的银行、工资制度什么样。不过这些问题与我们
展开阅读全文