要查询在校时间超过三年的学生信息
(其中enter_date的格式是 2002-09-01这样的格式)下面的语句有问题,请大家帮忙改一下?错在 'date' 不是可以识别的 函数名。
select * from students where( year( date()-year(enter_date) ) )>3

解决方案 »

  1.   

    select * from students where( year( getdate()-year(enter_date) ) )>3
      

  2.   

    getdate()  取得当前的日期
      

  3.   

    虽然改成getdate() ,但还是不行啊,不知道为什么它输出了所以的学生信息,好象根本没进行筛选一样 
    select * from students where( year( getdate()-year(enter_date) ) >3)
      

  4.   

    getdate() 取得当前的时间是 2007-05-07  00:00:00.000 这样的格式吧?
      

  5.   

    晕,你的括号位置错了,应该是
    select * from students where( year( getdate()) - year(enter_date)  >3)
      

  6.   


    select datediff(year, '2005-01-02', getdate())--result
    ----------- 
    2(1 row(s) affected)
      

  7.   

    谢谢 li_d_s
    我没看出来哦~~
    结帖给分