sql-server - DATEADD(DAY, 1, GETDATE()) 和 DATEADD(DAY, 1, DATEDIFF(DAY, 0, GETDATE())) 有什么不同
问题描述
之间有什么不同
DATEADD(DAY, 1, GETDATE())
和
DATEADD(DAY, 1, DATEDIFF(DAY, 0, GETDATE()))
有人可以帮助展示示例案例,如何使用它们吗?
解决方案
第一个版本包括GETDATE()
. 第二个没有。所以,如果当前时间是 2018-01-01T05:43:26,那么第一个版本返回:
2018-01-02T05:43:26
第二个删除时间组件,因此它返回:
2018-01-02T00:00:00
我认为第二天开始时获得午夜的更好版本是:
dateadd(day, 1, cast(getdate() as date))
推荐阅读
- mysql - 如何使用带有汉字的名称转储表格?
- python - 我想使用外键更新不同模型中的布尔字段
- .net - %2b 导致 IIS Hosted Angular 返回 404
- openid-connect - ASP.Net Core OIDC 如何识别新登录
- python-3.x - 在 Python 中将特定的中文标点符号替换为对应的英文标点符号
- ruby - 在视图中使用“助手”方法
- docker - Redis 哨兵故障转移
- vue.js - 我应该如何将 VeeValidate 3 用于手机上的浏览器?
- javascript - 如何正确处理移动设备的链接标签?
- python - sendVideo 给出错误“错误请求:无法获取 HTTP URL 内容”