2016新编delphi中SQL中日期的处理

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SQL 中日期的处理
通常,你需要获得当前日期和计算一些其他的日期,例如,你的程序可能需要判断一个月的第一天或者最后一天。

你们大部分人大概都知道怎样把日期进行分割(年、月、日等),然后仅仅用分割出来的年、月、日等放在几个函数中计算出自己所需要的日期!在这篇文章里,我将告诉你如何使用DATEADD和DA TEDIFF函数来计算出在你的程序中可能你要用到的一些不同日期。

在使用本文中的例子之前,你必须注意以下的问题。

大部分可能不是所有例子在不同的机器上执行的结果可能不一样,这完全由哪一天是一个星期的第一天这个设置决定。

第一天(DATEFIRST)设定决定了你的系统使用哪一天作为一周的第一天。

所有以下的例子都是以星期天作为一周的第一天来建立,也就是第一天设置为7。

假如你的第一天设置不一样,你可能需要调整这些例子,使它和不同的第一天设置相符合。

你可以通过@@DATEFIRST函数来检查第一天设置。

为了理解这些例子,我们先复习一下DA TEDIFF和DA TEADD函数。

DA TEDIFF函数计算两个日期之间的小时、天、周、月、年等时间间隔总数。

DA TEADD函数计算一个日期通过给时间间隔加减来获得一个新的日期。

要了解更多的DA TEDIFF和DA TEADD函数以及时间间隔可以阅读微软联机帮助。

使用DA TEDIFF和DA TEADD函数来计算日期,和本来从当前日期转换到你需要的日期的考虑方法有点不同。

你必须从时间间隔这个方面来考虑。

比如,从当前日期到你要得到的日期之间有多少时间间隔,或者,从今天到某一天(比如1900-1-1)之间有多少时间间隔,等等。

理解怎样着眼于时间间隔有助于你轻松的理解我的不同的日期计算例子。

一个月的第一天
第一个例子,我将告诉你如何从当前日期去这个月的最后一天。

请注意:这个例子以及这篇文章中的其他例子都将只使用DATEDIFF和DA TEADD函数来计算我们想要的日期。

每一个例子都将通过计算但前的时间间隔,然后进行加减来得到想要计算的日期。

这是计算一个月第一天的SQL 脚本:
SELECT DA TEADD(mm, DATEDIFF(mm,0,getdate()), 0)
我们把这个语句分开来看看它是如何工作的。

最核心的函数是getdate(),大部分人都知道这个是返回当前的日期和时间的函数。

下一个执行的函数DA TEDIFF(mm,0,getdate())是计算当前日期和“1900-01-01 000000.000”这个日期之间的月数。

记住:时期和时间变量和毫秒一样是从“1900-01-01 000000.000”开始计算的。

这就是为什么你可以在DA TEDIFF函数中指定第一个时间表达式为“0”。

下一个函数是DATEADD,增加当前日期到“1900-01-01”的月数。

通过增加预定义的日期“1900-01-01”和当前日期的月数,我们可以获得这个月的第一天。

另外,计算出来的日期的时间部分将会是“000000.000”。

这个计算的技巧是先计算当前日期到“1900-01-01”的时间间隔数,然后把它加到“1900-01-01”上来获得特殊的日期,这个技巧可以用来计算很多不同的日期。

下一个例子也是用这个技巧从当前日期来产生不同的日期。

本周的星期一
这里我是用周(wk)的时间间隔来计算哪一天是本周的星期一。

SELECT DA TEADD(wk, DATEDIFF(wk,0,getdate()), 0)
一年的第一天
现在用年(yy)的时间间隔来显示这一年的第一天。

SELECT DA TEADD(yy, DA TEDIFF(yy,0,getdate()), 0)
季度的第一天
假如你要计算这个季度的第一天,这个例子告诉你该如何做。

SELECT DA TEADD(qq, DA TEDIFF(qq,0,getdate()), 0)
当天的半夜
曾经需要通过getdate()函数为了返回时间值截掉时间部分,就会考虑到当前日期是不是在半夜。

假如这样,这个例子使用DA TEDIFF和DA TEADD函数来获得半夜的时间点。

SELECT DA TEADD(dd, DA TEDIFF(dd,0,getdate()), 0)
深入DA TEDIFF和DA TEADD函数计算
你可以明白,通过使用简单的DA TEDIFF和DA TEADD函数计算,你可以发现很多不同的可能有意义的日期。

目前为止的所有例子只是仅仅计算当前的时间和“1900-01-01”之间的时间间隔数量,然后把它加到“1900-01-01”的时间间隔上来计算出日期。

假定你修改时间间隔的数量,或者使用不同的时间间隔来调用DA TEADD函数,或者减去时间间隔而不是增加,那么通过这些小的调整你可以发现和多不同的日期。

这里有四个例子使用另外一个DA TEADD函数来计算最后一天来分别替换DA TEADD函数前后两个时间间隔。

上个月的最后一天
这是一个计算上个月最后一天的例子。

它通过从一个月的最后一天这个例子上减去3毫秒来获得。

有一点要记住,在Sql Server中时间是精确到3毫秒。

这就是为什么我需要减去3毫秒来获得我要的日期和时间。

SELECT dateadd(ms,-3,DATEADD(mm, DA TEDIFF(mm,0,getdate()), 0))
计算出来的日期的时间部分包含了一个Sql Server可以记录的一天的最后时刻(“235959997”)的时间。

去年的最后一天
连接上面的例子,为了要得到去年的最后一天,你需要在今年的第一天上减去3毫秒。

SELECT dateadd(ms,-3,DATEADD(yy, DA TEDIFF(yy,0,getdate()), 0))
本月的最后一天
现在,为了获得本月的最后一天,我需要稍微修改一下获得上个月的最后一天的语句。

修改需要给用DATEDIFF比较
出了这个月的最后一天。

这是计算本月最后一天的SQL脚本。

SELECT dateadd(ms,-3,DATEADD(mm, DA TEDIFF(m,0,getdate())+1, 0))
本年的最后一天
你现在应该掌握这个的做法,这是计算本年最后一天脚本
SELECT dateadd(ms,-3,DATEADD(yy, DA TEDIFF(yy,0,getdate())+1, 0))。

本月的第一个星期一
好了,现在是最后一个例子。

这里我要计算这个月的第一个星期一。

这是计算的脚本。

select DATEADD(wk, DA TEDIFF(wk,0,
dateadd(dd,6-datepart(day,getdate()),getdate())
), 0)
在这个例子里,我使用了“本周的星期一”的脚本,并作了一点点修改。

修改的部分是把原来脚本中“getdate()”部分替换成计算本月的第6天,在计算中用本月的第6天来替换当前日期使得计算可以获得这个月的第一个星期一。

总结
我希望这些例子可以在你用DA TEADD和DA TEDIFF函数计算日期时给你一点启发。

通过使用这个计算日期的时间间隔的数学方法,我发现为了显示两个日期之间间隔的有用历法是有价值的。

注意,这只是计算出这些日期的一种方法。

要牢记,还有很多方法可以得到相同的计算结果。

假如你有其他的方法,那很不错,要是你没有,我希望这些例子可以给你一些启发,当你要用DA TEADD和DA TEDIFF函数计算你程序可能要用到的日期时。

---------------------------------------------------------------
附录,其他日期处理方法
1)去掉时分秒
declare @ datetime
set @ = getdate() --'2003-7-1 100000'
SELECT @,DA TEADD(day, DA TEDIFF(day,0,@), 0)
2)显示星期几
select datename(weekday,getdate())
3)如何取得某个月的天数
declare @m int
set @m=2 --月份
select datediff(day,'2003-'+cast(@m as varchar)+'-15' ,'2003-'+cast(@m+1 as varchar)+'-15')
另外,取得本月天数
select datediff(day,cast(month(GetDate()) as varchar)+'-'+cast(month(GetDate()) as varchar)+'-15' ,cast(month(GetDate())
或者使用计算本月的最后一天的脚本,然后用DAY函数区最后一天
SELECT Day(dateadd(ms,-3,DA TEADD(mm, DA TEDIFF(m,0,getdate())+1, 0)))
4)判断是否闰年:
SELECT case day(dateadd(mm, 2, dateadd(ms,-3,DA TEADD(yy, DA TEDIFF(yy,0,getdate()), 0)))) when 28 then '平年' else '闰年' end
或者
select case datediff(day,datename(year,getdate())+'-02-01',dateadd(mm,1,datename(year,getdate())+'-02-01'))
when 28 then '平年' else '闰年' end
5)一个季度多少天
declare @m tinyint,@time smalldatetime
select @m=month(getdate())
select @m=case when @m between 1 and 3 then 1
when @m between 4 and 6 then 4
when @m between 7 and 9 then 7
else 10 end
select @time=datename(year,getdate())+'-'+convert(varchar(10),@m)+'-01'
select datediff(day,@time,dateadd(mm,3,@time))
电力安全月工作总结
[电力安全月工作总结]电力安全月工作总结2011年3月1日至3月31日为我公司的安全生产月,**变电站围绕;夯实基储提高素质、树立标杆、争创一流;的主题,开展了丰富多彩、形式多样的具体行动:通过看板形式宣传安全第一、预防为主的方针;通过48+4的学习机会,进行安全生产大讨论;通过安全活动进行查找本站的隐患的活动,电力安全月工作总结。

形成了;人人学会安全,层层尽责保证安全;的良好氛围,使我站的安全生产工作又上了一个新的台阶。

本站安全生产月活动具体工作如下:
1.开展安全月活动宣传工作,大家坐在一起讨论活动的主题、学习实施纲要、讨论各个实施阶段的活动安排。

深刻反思11.3事故,汲取事故教训,每人写了一份11.3事故反思,并对本站的安全管理、记录报表、规章制度、培训工作、事故隐患每个值班员都谈了自己的看法和建议,对站内管理每个人都倾注了最大的热情,可见11.3对每一个值班员的触动是刻骨铭心的,安全月的必要开展对变电站各项工作的促进,尤其对值班员安全意识、主人翁精神的影响最为深刻。

2.深入开展安全生产大检查活动。

在安全生产整顿周活动的基础上,结合秋季安全大检查,进一步查摆了本站安全生产的隐患,特别是各种规章制度的建立、健全、完善和执行情况,对现场运行规程从全面、具体和针对性上进行了修订;制定全站停电的反事故预案,制定低温天气和防冰闪的反事故措施,进行现场演练。

当前正处年底收
关和人员调整后的敏感时期,人员思想浮动大,而且本站正在进行新母差与新间隔投运的准备工作,施工人员多,施工人员安全意识和安全防范技能较低,是近阶段我站安全运行的一大隐患,我们会同工作负责人一起讨论施工过程中的存在和潜在的危害,并有针对性地制定防范了措施,保证了施工安全的进行。

针对人员素质参差不起,安全意识高低不同,我们制定了《**站考核细则》,制定措施, 明确职责和工作程序,对任何可能发生的情况做了充分的准备工作。

3.利用交接-班的时间,我们查找本站存在的隐患,实行分片分区,责任到人,对查找到的隐患汇总分析,能自己解决的我们都及时认真地消除,对我站能力不足不能解决的,我们纳入工区的职业安全健康体系,由工区负责解决,工作总结《电力安全月工作总结》。

该报缺陷的上报缺陷,该报危害辨识的报危害辨识,使站内所有设备、所有工作、所有危险点在控、可控、能控。

4.对在本月进行的工作、操作等,我们编制事故预案,如220KV 母差保护更换的准备工作和悬垂刷涂工作,除了工区安排跟踪外,站内根据人员新调整、新人员对设备不熟悉的现状,三班改为两班,加强值班力量,保证了各项工作的顺利完成。

为防止意外发生,我们共同讨论制定出了在工作期间母线故障的反事故预案。

5.每个班利用晚饭后的时间讨论检查了我站在遵章守制方面还存在哪些差距,现有规程制度能否满足现场规范化、标准化工作需要,并在站内宣读并实施了《**站考核细则》,按照个人能力分为12大员管理站内事务,规定每个值班员必须按照规章制度工作,否则就严格
考核。

在个人专业技能与岗位要求存在的差距,站内按人所需制订培训计划,建立心智加油站和个人提升计划的培训平台进行培训。

工作日志、检修记录、安全活动、安全用具记录、缺陷记录等班组记录已经和工区进行交流,完善纪录格式。

6.对全站值班员进行《电力安全工作规程》、本岗位安全职责、工作中的危险点辨识和防范措施及相关专业的规程制度等的培训,选派两名值班员参加工区举办的安规比赛,锻炼值班员具备工作所要求的安全生产技能,熟知各项工作的危险点及防范措施;
7.完善三票管理制度,针对本站实际按照运行工区职业安全健康管理体系实施;三票;管理制度,内容完善;;三票;按照规定执行,严格执行倒闸操作;六关;制度(操作准备关、接令关、操作票填写关、核对图板关、操作监护关、质量检查关);;三票;的填写及执行情况良好。

;三票;管理制度健全,制定了;三票;合格评价标准和考核规定;;三票;合格评价符合标准要求,对发现的问题能及时提出改进措施,有记录可查;定期对;三票;的执行情况进行统计、分析和考评。

8.重温《沧州供电公司运行管理标准》及运行相关管理规定。

完善我站的《综自站的管理规定》,并制定措施严格执行。

查找五防系统管理和软件缺陷,及时上报,并请厂家销缺。

查找现场防误闭锁装臵的运行情况,缺陷及时报告;建立起完善解锁钥匙的管理制度,严格执行;严格执行操作监护制度,重新修改操作密码,严格密码管理,使操作监护制度的执行从小操作就具备条件。

9.对继电保护及自动装臵进行全面检查,核对保护装臵定值与定值
单相符。

规定每月20日核对保护压板投切正确,并要求做好记录。

检查户外继电器、端子箱等二次设备有防雨、防潮和保护室降温等安
全措施。

10.现场安全措施方面进行有针对性制定现场三项措施和进行危险点分析;现场作全封闭围网,现场措施落实良好;对每个作业现场做到层层把关,严格执行;三大措施;,做到责任到位、工作到位、监督到位;对任何违反安全规程的行为立即得到制止。

11.强调安全用具的管理。

各类安全用具配臵、台账、试验、存放使用符合要求;增加每月10日对安全器具进行试验检查,使其保持在完好状态。

12.完善消防管理。

重新完善消防管理制度,健全消防组织,使新来的值班员在消防组织中找到自己的定位,明确各自的职责;消防设施、器具齐全,布臵符合规定,状态完好;培训职工消防器材的使用
方法。

13.在日常管理中强调安全监督体系,由站长牵头组成安全监督体系,每个值班员都有安全监督责任,明确分工,履行安全监督职责;重新要求运行日志、安全分析记录和安全活动等记录的填写,使其具
有针对性和及时性;
14.加强输变电设备管理,健全输变电设备台账和技术档案,并做到及时更新。

新设备技术培训工作做到及时有效,有效利用嵌入式变电设备巡检系统及按照《作业指导书》的要求,组织开展变电设备巡视检查。

;安全生产月;活动即将结束,但安全生产是永远没有结束的,而是一个起点,一个契机,今后的工作中我们要继续发扬安全生产月
的活动精神,以人为本,从提高人员素质入手,时时保安全,处处要安全,严格按照我公司和工区的安全生产要求执行,全面落实安全责任制,使我站的安全运行再上一个新的台阶,为我公司的安全生产做
出贡献。

电力行业职称晋升业务工作总结
[电力行业职称晋升业务工作总结]我叫*,*年*月出生,现年*岁,中共党员,电力行业职称晋升业务工作总结。

*年*月参加工作,先后在*、*供电站、*工程队、*修试班工作,*年考入华北电力大学(北京)用电监察与管理专业脱产学习两年,*年毕业后在*局*保线站工作,*年元月获得助理工程师职称,*年*月调至*科,先后从事*专责、*专责、*专责和*专责工作。

现在*科主管*营业管理工作,同时兼任*局*专责
和*专责。

任助理工程师近*年来,自己的工作性质和从事的专业虽没有改变,但不同岗位的锻炼,使自己的专业知识有了一个更大的实践和拓展空间,进一步锻炼和丰富了自己,增长了知识和才干,提高了自己的专业技术水平,各方面都得到了长足的进步,同时,在近几年的营销管理工作实践中,自己坚持以市场为导向,以效益为中心,以服务宗旨,坚持科学管理,规范经营,狠抓落实,积极开拓电力市场,圆满完成了各项工作任务并取得了较好成绩。

一、思想政治素质得到提高
在多年的工作实践中,自己深深认识到,只有政治上的坚定和思想上的清醒,才能保持良好的工作作风和忠于职守、爱岗敬业的勤奋精神。

因此,在任助理工程师以来的工作中,自己更注重不断地补充自己,提高自己的政治和理论素养。

一是抓好学习,尤其是理论学习,用正确的理论来指导工作,在学习中,自己一方面按照规定的学习制度参加集体学习,记好学习笔记和心得体会,还利用工作和业余时间抓好自学,注意拓宽学习面,提高自己的综合知识水平;并注重了解和掌握时事政治,在思想上时刻与党中央保持一致,在工作步调上与县局保持一致;同时,联系思想和工作实际,与同事们一起有针对性地学习探讨,研讨工作学习方法和体会,用正确的理论武装思想,指
导工作,不断改造自己的世界观。

二是认真贯彻党的路线、方针、政策,坚持四项基本原则,贯彻上级的指示精神,以明确的思想意识来指导自己的行动,按照上级的安排部署,积极投身于各种活动。

三是在工作学习中认真实践全心全意为人民服务的宗旨,牢固树立公仆意识。

自己经常想,我之所以能从一个普通工人走上管理岗位,取得专业技术职称,完全是党的培养和领导的信任,在这个岗位上我只能是尽职尽责,干好工作回报党。

因此,在日常工作中,自己坚持深入基层,到一线调查了解管理中存在的问题,进一步改进工作,提高自己能力,同时,对自己严格要求,减少办事程序,提高工作效能,恪守职业道德,注重保持良好的职业形象,工作总结《电力行业职称晋升业务工作总结》。

四是坚持党性原则,实事求是,作风正派,用自己的行动去体现一个党员和工程技
术人员的导向作用,发扬敢抓敢管的作用,推动自己主管的各项工作不断发展。

同时,在日常工作中,自己坚持努力做到踏踏实实工作,堂堂正正做人,正确对待个人的名利待遇,坚持扎实认真、兢兢业业、尽职尽责地努力工作,圆满完成各项工作任务。

二、技术和业务水平不断增强
从参加工作尤其是任助理工程理师职称以来,自己的技术水平和业务能力得到很大的提高和加强,如果说两年的专业技术学习奠定了自己的理论基础,那么,多年的工作实践更使这些理论得以巩固和提高。

在工作实践中,自己常常认识到自己专业理论还比较薄弱,因此,自己不断加强学习,虚心请教有专业特长的工程师和学者,不放过每一个学习和提高的机会,使自己的技术水平和能力不断加强。

在学习和工作实践中,自己一是侧重学习,加强理论功底的培养。

每到业余时间,每到夜晚,自己总是坚持看相关专业技术理论书籍,坚持记学习笔记。

二是继续接受高等教育。

在坚持自学的基础上,于*年至*年函授读完了华北电力大学电气工程及其自动化专业专升本学习,顺利毕业,成为全班70人中仅有10人获得学士学位的人员之一。

这一切,更进一步奠定了自己在参与企业管理中能够较好地完成任务的基础。

三是带着工作实践中的问题,有重点地学习。

自己所主管的工作具有很强的专业性和技术性,如*管理、*管理等方面,有实际工作中均有比较复杂的问题需要自己拿出初步方案意见供领导决策。

对此,自己一方面认真倾听各方面的意见并以自己的理论知识来加以分析,另一方面,带着这些问题查阅有关书籍资料,寻找解决问题的
方法,这些经历,使自己的理论知识和实践经验不断丰富、提高。

四是订阅各种学习资料,不断研究了解国内外的先进技术和管理知识。

对一些先进的理论,做到学通弄懂,对一些先进的技术和管理知识,做到与本单位的实际相结合并正确地运用到实际中去,同时,利用自己的计算机特长,熟练的掌握了用电营销管理软件的使用和日常维护以及故障的解决和排除方法,并结合实际编写操作手册,指导培训基层同志熟练操作,同时,实现了通过微机来检查和辅助决策全局的营
销状况和相关工作。

通过几年来理论与实践相结合的学习,自己的业务技术和专业知识得到很大的提高,并能有效地将理论知识应用到管理实践,取得了较
好的成效。

三、工作业务卓有成效
1、连年完成各项经营指标。

在自己任职的近几年时间里,经历了电力市场由买方变为卖方的转型期。

在此期间,自己发挥自己的专业所长,为全局的经营指标完成而尽职尽责。

尤其是在近年来,自己与局领导及其他营销人员认真分析市场,贯彻上级的营销方略,千方百计开拓电力市场,并不断完善用电营业抄、核、收制度,规范经营行为,连年完成了上级下达的各项经营指标。

使售电量由*年的*亿千瓦时增长到*年的*亿千瓦时,增长率*%;销售收入由*年*万元增长到*年的万元,增长率%,线损率稳中有降,综合线损较*年的*%下降到*年的*%,各项经营指标的年增长率平均以12%的速度递增。

*年*月自己接管*营业主管工作后,各项经营成果不断扩大,今年1-6月,实现*收
入较去年同期增长*万元的好成绩,指标完成连创本局最好记录。

2、积极开拓电力市场。

根据我县的电力市场现状,在市场营销中,自己主动出击,先后争取了原由*供电局供电的用电大户玻璃纤维厂的供电,帮助县水泥厂、*水泥厂实现了技改扩容,积极争取英特利果蔬公司等工业大户由我局供电,这一切,为我局电量增长、利润增
加和电费回收奠定了坚实基础。

3、积极开展QC活动,推进企业管理创新。

从*年至今,自己连年主持参加县局QC活动,并连年获奖。

*年的"降低电能表故障率"获得*局二等奖,*省电力行业协会三等奖,并被*省科协,共青团*省委授予优秀奖;*年的"降低配电变压器故障率"获得*局三等奖,*省电力行业协会优秀奖;*年的"解决10KV高压计量箱带电操作安全问题"获得*局二等奖,*省电力行业协会优秀奖。

这些成果的取得,都源于自己平时的专业知识积累和调查研究的
结果。

共2页:
上一页
1 2
下一页
电力安全生产工作
[电力安全生产工作]电力安全生产工作2011年3月1日至3月31日
为我公司的安全生产月,**变电站围绕;夯实基储提高素质、树立标杆、争创一流;的主题,开展了丰富多彩、形式多样的具体行动:通过看板形式宣传安全第一、预防为主的方针;通过48+4的学习机会,进行安全生产大讨论;通过安全活动进行查找本站的隐患的活动,电力安全生产工作。

形成了;人人学会安全,层层尽责保证安全;的良好氛围,使我站的安全生产工作又上了一个新的台阶。

本站安全生产月活动具体工作如下:
1.开展安全月活动宣传工作,大家坐在一起讨论活动的主题、学习实施纲要、讨论各个实施阶段的活动安排。

深刻反思11.3事故,汲取事故教训,每人写了一份11.3事故反思,并对本站的安全管理、记录报表、规章制度、培训工作、事故隐患每个值班员都谈了自己的看法和建议,对站内管理每个人都倾注了最大的热情,可见11.3对每一个值班员的触动是刻骨铭心的,安全月的必要开展对变电站各项工作的促进,尤其对值班员安全意识、主人翁精神的影响最为深刻。

2.深入开展安全生产大检查活动。

在安全生产整顿周活动的基础上,结合秋季安全大检查,进一步查摆了本站安全生产的隐患,特别是各种规章制度的建立、健全、完善和执行情况,对现场运行规程从全面、具体和针对性上进行了修订;制定全站停电的反事故预案,制定低温天气和防冰闪的反事故措施,进行现场演练。

当前正处年底收关和人员调整后的敏感时期,人员思想浮动大,而且本站正在进行新母差与新间隔投运的准备工作,施工人员多,施工人员安全意识和安全防范技能较低,是近阶段我站安全运行的一大隐患,我们会同工作。

相关文档
最新文档