日期:2014-05-17  浏览次数:20896 次

查询某段时间内满足条件的记录时这个now()有问题,该如何改?
现在想查询24小时内登陆的用户,用到查询语句如下:
Sql= "Select   U.*,g.Title   As   Role   From   BY_User   U   inner   join   BY_UserGroups   G   on   u.Flag=G.Id   Where   Datediff( 'h ',u.LoginTime, ' "&now()& " ') <25   Order   By   u.Id   Desc "
这个语句在数据库是access的时候没有问题,现在我把数据库库改为sql以后就出错了,我估计就是now()的问题,请知道的朋友指点一二该如何改才能正常?

------解决方案--------------------
datediff(hh,u.LoginTime, ' "&now()& " ') <25

------解决方案--------------------
试试把now()换成getdate()或{ fn NOW() }

datediff(hh,u.LoginTime,getdate()) <25
datediff(hh,u.LoginTime,{ fn NOW() }25

有可能是你的数据库中的日期时间格式和asp中的now()格式不一致