很简单,
如:2003-2-25 18:25:26这个时间记录在数据库中
然后用当前时间与之比较,算出结果的是几年几个月零几天?
请大家帮忙思考一下
谢谢

解决方案 »

  1.   

    SELECT DATEDIFF(day, pubdate, getdate()) AS no_of_days
    FROM titles
    注意上面的day,是计算日子,如果是yy就是年,如果是m就是月,hh是小时,mi是分
      

  2.   

    SELECT DATEDIFF(yy, pubdate, getdate()) AS no_of_years, DATEDIFF(m, pubdate, getdate()) % 12 AS no_of_months, DATEDIFF(day, pubdate, getdate()) % 30 AS no_of_days
    FROM titles
      

  3.   

    那么请问我怎么判断是一年两年,或者一个月还是两个月?
    可以这样吗? 
    if(DATEDIFF(yy, pubdate, getdate())<2)
    {
    一年;
    }
    if(DATEDIFF(m, pubdate, getdate())<2)
    {一个月;}
      

  4.   

    虽然C#中也有时间的判断函数。但我认为这项工作放到数据库中执行。效率会高很多哦。
    不过也不对啦。ASP.NET是离线数据库。如果用C#来判断时间,并输出数据集,只是把数据库上的工作量放到了WEB服务器上而已。应该是这样吧?学习ing
      

  5.   

    要选出一天内发布的信息:

    where Datediff(dd,yourdate,gatdate())<2 and Datediff(mm,yourdate,gatdate())=0 and Datediff(yy,yourdate,gatdate())=0当然,你也可以用Datediff(hh,yourdate,getdate())=24来比较
    大概意思就这样吧
    你自己看看怎么用yourdate 是你要比较的时间