我的表中有2列,一个有小时,另一个有日期。但是,我想显示从今天和选定小时起的最后24小时。例如,如果我选择上午10点30分作为我的随机小时,我想从上午10点30分和今天的日期显示最近24小时。显示SQL Server中选定日期的最近24小时内
我相信我的语法错了,请帮忙。
select
ID, MilitaryHours, DT
from
myTable
where
MilitaryHours >= 1030 and DT >= DATEADD(HOUR, -24, GETDATE())
这里是我的DDL
CREATE TABLE myTabl
(
[ID] [bigint] IDENTITY(1,1) NOT NULL,
[MilitaryHours] [nvarchar](20) NULL,
[DT] [datetime] NULL
CONSTRAINT [PK_Diary]
PRIMARY KEY CLUSTERED ([ID] ASC)
WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON,
ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
请编辑您的问题,包括了'CREATE TABLE' DDL为'myTable'所以很清楚涉及哪些数据类型。我添加了 – 2015-02-17 21:07:49
。我想我需要更改军事小时的数据类型 – moe 2015-02-17 21:13:47
您的DT日期时间列是否包含存储在MilitaryHours列中的相同时间? – mheptinstall 2015-02-17 21:15:43