declare @A datetime,@B datetime select @A=dateadd(minure,-nPre,BgnTime),@B=dateadd(minute,nLase,EndTime) from T1 where nProID=? select nUserID from T2 where userDate+' '+userTime between @A and @B
select nUserID from T2 where cast(userDate+' '+convert(char(10),userTime,108) as datetime) >=(select dateadd(mi,-nPre,BgnTime) from T1 where nProID=@nProID) and cast(userDate+' '+convert(char(10),userTime,108) as datetime) <=(select dateadd(mi,nLast,EndTime) from T1 where nProID=@nProID)
--先申明一个变量@nProID select nUserID from T2 where cast(userDate+' '+convert(char(10),userTime,108) as datetime) >=(select dateadd(mi,-nPre,BgnTime) from T1 where nProID=@nProID) and cast(userDate+' '+convert(char(10),userTime,108) as datetime) <=(select dateadd(mi,nLast,EndTime) from T1 where nProID=@nProID)
15 10
代表的时?分?秒?
在T2中查询用户的刷卡时间在[BgnTime-nPre, EndTime+nLast]时间范围内的所有记录
select @A=dateadd(minure,-nPre,BgnTime),@B=dateadd(minute,nLase,EndTime) from T1 where nProID=?
select nUserID from T2 where userDate+' '+userTime between @A and @B
select nUserID from
T2
where
cast(userDate+' '+convert(char(10),userTime,108) as datetime)
>=(select dateadd(mi,-nPre,BgnTime) from T1 where nProID=@nProID)
and
cast(userDate+' '+convert(char(10),userTime,108) as datetime)
<=(select dateadd(mi,nLast,EndTime) from T1 where nProID=@nProID)
select nUserID from
T2
where
cast(userDate+' '+convert(char(10),userTime,108) as datetime)
>=(select dateadd(mi,-nPre,BgnTime) from T1 where nProID=@nProID)
and
cast(userDate+' '+convert(char(10),userTime,108) as datetime)
<=(select dateadd(mi,nLast,EndTime) from T1 where nProID=@nProID)