如何取数据表中时间字段的年份?在sql数据中time字段中的数据如下:
2004-10-12 02:21:21
2004-10-15 02:21:28
2005-10-12 03:21:21
2005-12-12 02:21:21
现在我想取年份如2004,2005,请问如何获得啊?

解决方案 »

  1.   

    数据库方法
    select datepart(year,getdate())-- Datepart  Abbreviations 
    -- year  yy, yyyy 
    -- quarter  qq, q 
    -- month  mm, m 
    -- dayofyear  dy, y 
    -- day  dd, d 
    -- week  wk, ww 
    -- weekday  dw 
    -- hour  hh 
    -- minute  mi, n 
    -- second  ss, s 
    -- millisecond  ms 
    c#方法
    int year=Convert.ToDateTime(System.DateTime.Now).Year;
      

  2.   

    我用select datepart(year,getdate())试过啊,但是他的结果都是和系统时间的年份一样啊?是不是还要写什么啊?还是我的方法不对啊?我的意思是如现在是2005年,但是在我的数据表中有如
    2004-12-12 02:13:20这样的时间,我想获取这个时间的年份:2004,如何获取啊?
    还有如果按照楼上说的采用c#的方法,从数据表中得到的的值time类型是string,如何把time的类型转换为datatime型?
      

  3.   

    ^_^,select datepart(year,getdate())这是在给你举例说明,你实际用的时候要换成数据库字段如果数据库字段是time,则
    select datepart(year,time)
      

  4.   

    楼上的完全正解
    select datepart(year,time) time是你的数据库字段