加入收藏 | 设为首页 | 会员中心 | 我要投稿 4S站长网 (https://www.4s3.cn/)- 科技、混合云存储、数据迁移、云上网络、数据计算!
当前位置: 首页 > 数据库 > MsSql > 正文

sql-server C SQL Server 2008:从datetime2获取日期部分

发布时间:2023-12-14 23:09:31 所属栏目:MsSql 来源:DaWei
导读: 我一直在使用这个非常方便的方法从日期时间值中提取日期部分:


select dateadd(day,datediff(day,@inDate),0)
这基本上将日期的时间部分清零.它很快,更重要的是它是确定性的 C 您

我一直在使用这个非常方便的方法从日期时间值中提取日期部分: select dateadd(day,datediff(day,@inDate),0)

这基本上将日期的时间部分清零.它很快,更重要的是它是确定性的 C 您可以在持久计算列,索引视图等中使用此表达式.

但是我很难想出一些适用于datetime2类型的东西.问题是SQL Server没有权限从整数到datetime2类型的转换.

是否有一个等同的,确定性的方法从datetime2剥离时间部分?

解决方法 你不能只做一个 ALTER TABLE dbo.YourTable ADD DateOnly AS CAST(YourDate AS DATE) PERSISTED

CAST(… AS DATE)将您的datetime2列转换为“仅限日期”,并且它似乎足够确定性,可用于持久的计算列定义…

(编辑:4S站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章