我需要一些帮助来查询。
我想使用 GETDATE 作为今天的日期并指定上午 6:00 到下午 6:00 的时间
例如,类似:
where t_stamp between "current date 06:00:00" and "current date 18:00:00"
我需要一些帮助来查询。
我想使用 GETDATE 作为今天的日期并指定上午 6:00 到下午 6:00 的时间
例如,类似:
where t_stamp between "current date 06:00:00" and "current date 18:00:00"
GETDATE 似乎表明它是 SQL Server - 请在以后包含此信息。
许多方法之一是:
where t_stamp between
CONVERT(DATETIME,CONVERT(VARCHAR(10),GETDATE(),126) + 'T06:00:00',126)
AND
CONVERT(DATETIME,CONVERT(VARCHAR(10),GETDATE(),126) + 'T18:00:00',126)
丑我知道。同一个答案有大约一百万种不同的排列。
对于 SQL Server 2008 及更高版本:
declare @start datetime
declare @end datetime
set @start = dateadd( hh, 6, convert( datetime, convert(date, getdate()) ) )
set @end = dateadd( hh, 12, @start )
select @start, @end