gpt4 book ai didi

sql - 获取日期 SQL Server 的最大可能时间

转载 作者:行者123 更新时间:2023-12-05 08:29:49 25 4
gpt4 key购买 nike

我想做的是在 SQL Server 中获取一个日期,并找到该日期的最后可能的小时、分钟、秒和毫秒。

所以如果日期是这样的:2021-02-16 13:08:58.620

我想返回:2021-02-16 23:59:59.999

我已经尝试过类似的方法,但它不起作用,我想我遗漏了一些东西,它正在转换时间并保持该日期的小时、分钟、秒和毫秒

Select 
DateAdd(MILLISECOND, -1, (Convert(datetime, DATEADD(day, 1, DateValue), 101))) as lastPossibleDate
From
Table1

最佳答案

将其转换为日期以截断时间,添加一天,将其转回日期时间,减去毫秒...

declare @Test datetime2(3) = '2021-02-16 13:08:58.620';

select dateadd(millisecond, -1, convert(datetime2(3),dateadd(day, 1, convert(date, @Test))));
<表类="s-表"><头>结果<正文>2021-02-16 23:59:59.999

注意如果直接使用datetime而不是 datetime(2)你的准确度只有 3 毫秒。 datetime(2)是推荐使用的日期时间数据类型。

关于sql - 获取日期 SQL Server 的最大可能时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67878360/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com