我有一个表,里面有一个字段叫“借阅时间”,类型为data型。另一个字段叫“年限”,为text型。
在“年限”字段里的值为1,2,3等等,代表借了多少年。我现在想查找出超过年限的记录,该怎么写sql语句呢?
例如:我的借阅时间为“1998-3-6”,年限是2年,那么现在是2005年,它已经超期了。
就是要把这种记录查找出来。、
谢谢各位高手了!

解决方案 »

  1.   

    用datediff()函数计算两个日期之差并判断
      

  2.   

    to:Leftie(左手,为人民币服务)
       请给我写出具体操作好吗?我对这个函数不太了解。
    to:bwldwb6(多情无晴) 
        我“年限”这个字段是text型的,随便添多少年都可以,也可以是15年呀。
      

  3.   

    如果正确的话试试 select * from 表名  where 2005-6-2 减去 借阅时间 >=2
      

  4.   

    Select * from 表 where datediff(day,dateadd(year,借阅时间,年限),Getdate())<0
      

  5.   

    to:Athickhead(穿着三角裤到处跑终归是件不体面的事) 
      请给我解释一下你的代码好吗?
      

  6.   

    比较2个时间就是,
    If CDate(Data.Fields("还期")) < Date Then
    OutDate = True
    end if
    If OutDate Then         '显示借书超期提示
            MsgBox "你共有" & iRow & "本书已经超期!", vbCritical, "图书借阅管理"
    End If
      

  7.   

    Select * from 借阅表 where datediff("yyyy",借阅时间,date)>2或Select * from 借阅表 where datediff("d",借阅时间,date)>=371
      

  8.   

    妳用樓上的方法
    datediff 是計算日期差額的函數
    datediff(yyyy/m/d,date1,date2)
    yyyy,求年的差額
    m,求月的差額
    D,求日的差額Select * from 借阅表 where datediff("yyyy",借阅时间,date)>2
    應該沒有問題
      

  9.   

    请问
    Select * from 借阅表 where datediff("yyyy",借阅时间,date)>2
    里的"data"是什么意思?"> 2"是什么意思?
    我是新手,多多包含!