sql - TSQL - 获取当前时间的最后一秒

标签 sql sql-server-2008 tsql datetime

我需要使用查询来根据表中的字段获取一小时的最后一秒。

我已经处理过这个查询,它似乎可以工作 (SQL Server 2008)

SELECT DATEADD(S, -1, DATEADD(hh, 1, dateadd(minute, datediff(minute,0,GETDATE()) / 60 * 60, 0)))

这是解决此问题的最佳方法,还是有更清洁(更易读)和更快的方法。我正在考虑速度,因为这将在具有大量字符串处理的表上运行,并且正在尝试优化。

编辑:我最初将这个问题的文本和主题发布为“当前时间的最后一分钟”,这本来是为了阅读“最后一秒”。我的头脑显然已经停止了这一天。为我的错误道歉

最佳答案

这个怎么样:

  select convert(char(13),GETDATE(),121)+':59:59.000'


SQl Fiddle demo

关于sql - TSQL - 获取当前时间的最后一秒,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12858311/

相关文章:

php - 为什么我的 SQL 语句在我指定日期选择器的输出日期之前将数据显示到表中

php - (MYSQL)从具有某些资格的学生列表中计算平均值

sql server 2008,不能在子查询中使用order by

sql-server-2008 - 计算具有特定列数的内容的行

mysql - 从一定范围内的 X/Y 坐标获取正确的数据,但包括宽度和高度

php - 这段 PHP 代码有错误吗?

sql-server-2008 - 在 SQL Server 中表示树?

sql-server-2008 - 您可以使用AD LDS(ADAM)帐户向SSAS进行身份验证吗?

sql - 2 个 "same"WHERE 语句返回不同的记录数

c# - 获取从 SQL Server 返回的字符串值