根据 SQL 中的时钟时间数据,最新整整半小时

latest full half hour as per the clock time data in SQL

我正在尝试根据时钟时间获取最近整整半小时的数据。

例如,如果 getdate() return me '2016-11-14 10:14:25.567' ,我想要来自 '2016-11-14 09:30:00.000' 的数据到 '2016-11-14 10:00:00.000'

使用DateADD(mi, -30, getdate())

我想你想要这样的东西;

DECLARE @DateVariable datetime; SET @DateVariable = GETDATE()

SELECT
    @DateVariable Current_DateTime
    ,DATEADD(mi,-30, CONVERT(smalldatetime, ROUND(CAST(@DateVariable AS float) * 48.0,0,1)/48.0) ) From_Time
    ,CONVERT(smalldatetime, ROUND(CAST(@DateVariable AS float) * 48.0,0,1)/48.0) To_Time

日期变量现在是 (2016-11-14 16:26:52),它将为您提供最后一个完整的半小时

结果将如下所示;

Current_DateTime            From_Time               To_Time
2016-11-14 16:26:52.073     2016-11-14 15:30:00     2016-11-14 16:00:00