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

datediff判断时间
数据库:access

需求:判断数据表中是否存在今天的数据,

如果把数据表最后一条数据读取出来,再用代码进行时间判断可以完成,

但在数据库中直接判断好像会比较有效率,
datediff

------解决方案--------------------
DateDiff 函数:http://office.microsoft.com/zh-cn/access-help/HA001228811.aspx
------解决方案--------------------
SELECT tTest.ID, tTest.CDate
FROM tTest
WHERE DateDiff("d",Now(),[CDate])=0;
------解决方案--------------------
例如select top 1 col1 from tablename where DateCol>'2012-01-01'
这样就可以了,在日期列上加函数肯定是不建议的。
------解决方案--------------------
搞个where convert(char(10),sj)=convert(char(10),getdate())
------解决方案--------------------


--access经常不用,我给你个sql 语句,你转换一下:
select top 1* from Table where datediff(d,time,now())=0 order by time desc

--查询今天的数据并按照时间倒序排列,然后去第一条记录

------解决方案--------------------
用系统表MSysObjects

select * from MSysObjects where datediff('d', DateUpdate, '2013-07-29 00:00:00')=0