SQL-将时间设定为明天上午8点

wondergoat77

我想输入时间在12PM之后发生的任何日期,并将其第二天设置为8AM。

我知道如何使用来为日期添加时间或小时DATEADD,但是不知道如何仅将其设置为特定时间的第二天。

尝试使用SQL Server / Transact-SQL。

我能想到的唯一方法是创建一个计算日期的函数,并DATEADD根据输入将小时返回到小时,以使其达到8AM。

乔治·贝索斯(Giorgos Betsos)

以下:

DECLARE @mydate DATETIME = '2015-03-07 16:59:59.997'

SELECT DATEADD(day, 1, DATEADD(day, DATEDIFF(day, 0, @mydate), '08:00:00'))

产生以下输出:

2015-03-08 08:00:00.000

如果您还想检查datetime值是否在12PM之后,则可以使用:

SELECT CASE 
          WHEN CAST(@mydate AS TIME) > CAST('12:00:00' AS TIME) THEN 
              DATEADD(day, 1, DATEADD(day, DATEDIFF(day, 0, @mydate), '08:00:00'))
          ELSE 
              @mydate
       END 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将时间值设置为明天上午9点

来自分类Dev

将时间值设置为明天上午9点

来自分类Dev

Javascript:将新日期设置为明天上午8点

来自分类Dev

如何在PHP中获取当地时间今天上午11点和明天上午11点的Unix时间戳

来自分类Dev

如何设置明天上午10点的计时器

来自分类Dev

如果时间更长,SQL会追加14小时,而上午10点

来自分类Dev

在 Oracle 中获取当天上午 9 点

来自分类Dev

logstash解析时间戳,半天上午/下午

来自分类Dev

SQL计算时间范围之间的点

来自分类Dev

将议程时间从早上 6 点更改为明天早上 6 点

来自分类Dev

如何修改此SOQL以获取今天上午6点以后的所有记录

来自分类Dev

将数据库还原到时间点SQL SERVER 2008 R2

来自分类Dev

将数据库还原到时间点SQL SERVER 2008 R2

来自分类Dev

如何获得每天上午 9:00 与 Android 系统时间的比较?

来自分类Dev

高磁盘响应时间,每个星期六从上午8点开始

来自分类Dev

将价值设定为未知工资

来自分类Dev

将CORS呼叫设定为GET not OPTIONS

来自分类Dev

日期之间的DATEDIFF是基于营业时间(上午8点至下午5点)而不是总时数或天数

来自分类Dev

将时间戳插入MS SQL

来自分类Dev

SQL将字符转换为日期时间

来自分类Dev

SQL选择空间点

来自分类Dev

SQL将发布日期和时间减少了8小时

来自分类Dev

如何在SQL中创建今天晚上9点的时间

来自分类Dev

基于值的 SQL Server 绑定时间点

来自分类Dev

使用未定义的常量sql-假定为'sql'

来自分类Dev

SQL查询“时间”参考

来自分类Dev

SQL离岛时间打包

来自分类Dev

SQL更新列与时间

来自分类Dev

SQL查询的时间