首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > Access >

access 时间函数应用有关问题

2012-04-06 
access 时间函数应用问题现在有一个table里面有三个字段date1,date2,newdate说明:date1,date2中有时间数据

access 时间函数应用问题
现在有一个table   里面有三个字段
date1     ,date2,newdate

说明:date1,date2中有时间数据,newdate中没有时间数据。现在要使用update语句实现这样的要求,首先比较date1,date2两个字段中的时间数据,取距离当前系统时间最近的那个时间数据,然后update到newdate中去

在ms   sql   server   2000中使用的

update   table   set   newdate=   case   abs(datediff(dd,getdate(),date1))> abs(datediff(dd,getdate(),date2))   then   date1   else   date2   end;

这样的语句在sql   server   2000   中可以正常运行。到了access中就提示没有   case   then     这样的语法,同时也提示没有getdate()这样的时间函数,因为没有使用过access这样的桌面小型数据库,不知道如何解决,请知道的大虾指导一下,最好给出符合access语法规范的   sql   语句

[解决办法]
case-> iif
getDATE-> NOW() OR DATE()
[解决办法]
SQL Server中的case when 对应access中的iif()

SQL Server中的getdate() 对应access中的date()

改为如下:

update 表名 set
newdate= iif(abs(datediff( "d ",date(),date1))> abs(datediff( "d ",date(),date2)),date1,date2)

热点排行