今天需要通过存储过程设置一个固定增长的日期,尝试了几种不同的方法,但总觉得太过麻烦,不够简单直接。
我的需求是在当前日期基础上加固定天数(比如我这里是一天),然后再加上那一天的最后时刻,即时分秒为23:59:59。
一开始的思路是通过设置当天的时分秒为23:59:59,然后加一天。但发现并没有直接设置时分秒的函数,只有增加或减少的函数dateadd(), 遂作罢。
后面上网查找了些资料,思路突然就打开了,不过也从另一个方面说明自己SQL这块还不是很熟悉。
思路就是,将当前日期去除时分秒,然后加上天数,接着转换为字符串类型,最后再加上需要的时分秒,搞定。
主要用到了Sybase 里面的几个函数,dateadd(), convert(),
convert(DATETIME, convert(VARCHAR, dateadd(dd,+1,getdate()),101) + ' 23:59:59')
其实这里去除时分秒其实用到的是日期的格式。下图为常用的一些格式代码供读者参考。
Sybase 日期时间设置简单方法另外给个链接吧。
网友评论