2013-03-27 44 views
0

我需要查詢幫助。使用日期和時間的SQL查詢

我想用GETDATE今天的日期和指定時間上午6:00至下午6:00

例如,像:

where t_stamp between "current date 06:00:00" and "current date 18:00:00"

+2

您正在使用哪種RDBMS? SQL Server,MySQL,Oracle? – 2013-03-27 04:58:57

+0

什麼?你想要當前的日期,但你想指定一個間隔...喜歡..如何..爲什麼..哇... ?????????????? – jsedano 2013-03-27 05:00:11

+0

我正在使用MS SQL Sever – 2013-03-27 05:06:06

回答

0

對於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 
1

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) 

醜,我知道。大約有一百萬種不同的相同答案。

+0

謝謝你的工作非常讚賞 – 2013-03-28 02:14:33