如何将datetime类型的字段,取出后只有时间格式,没有小时分秒。请给出sql语句,谢谢

解决方案 »

  1.   

    SELECT CONVERT(VARCHAR(10),GETDATE(),120)/*
    ---------- 
    2008-07-17(所影响的行数为 1 行)
    */
      

  2.   

    select convert(varchar,getdate(),120)
      

  3.   

    聯機查看convert轉換日期格式select convert(varchar(8),getdate(),112)--112/120為格式,varchar(6)--顯示的字符數
      

  4.   

    select convert(varchar(10),getdate(),120) result/*
    result
    ---------
    2008-07-17
    */select convert(varchar(8),getdate(),108) result/*
    result
    --------
    13:24:46
    */--详细参考联机丛书的 : convert
      

  5.   

    以上的语句都对getdate()函数起作用,这时候是好用的,如果把它用字段来表示的话,就不好用了。
      

  6.   

    聯機查看convert轉換日期格式 select convert(varchar(8),getdate(),112)--112/120為格式,varchar(6)--顯示的字符數 roy_88 
    中国风
    也在台资干???
      

  7.   


    select convert(转换后的类型,表达式, [格式])
      

  8.   

    我来贴上格式的标准类型:
    日期和时间的类型:
    类型值 标准 输出
    0 default mon dd yyyy hh:miam
    1 usa mm/dd/yy
    2 ansi yy.mm.dd
    3 british/french dd/mm/yy
    4 german dd.mm.yy
    5 italian dd-mm-yy
    6 - dd mon yy
    7 - mon dd,yy
    8 - hh:mi:ss
    9 default + milliseconds--mon dd yyyy
    hh:mi:ss:mmmam(or )
    10 usa mm-dd-yy
    11 japan yy/mm/dd
    12 iso yymmdd
    13 europe default + milliseconds--dd mon yyyy
    hh:mi:ss:mmm(24h)
    14 - hh:mi:ss:mmm(24h)类型0,9,和13总是返回四位的年。对其它类型,要显示世纪,把style值加上100。类型13和14返回24小时时钟的时间。类型0,7,和13返回的月份用三位字符表示(用nov代表november).对表中所列的每一种格式,你可以把类型值加上100来显示有世纪的年(例如,00年将显示为2000年)。例如,要按日本标准显示日期,包括世纪,你应使用如下的语句:select convert(varchar(30),getdate(),111)在这个例子中,函数convert()把日期格式进行转换,显示为1997/11/30
      

  9.   

    DECLARE @t_time datetimeSET @t_time = getdate()print convert(nvarchar,@t_time,120) --输出 2008-07-17 22:53:50print convert(nvarchar,@t_time,112) --输出 20080717print convert(nvarchar,@t_time,111) --输出 2008/07/17print convert(nvarchar,@t_time,108) --输出 22:55:07