ASP.NET C# SQL Server 中SQL语句:我使用了下面的语句:
"SELECT M_ID, M_Content, M_Time_S FROM Messages ORDER BY M_Time_S DESC"
结果返回的日期格式是:"yyyy-M-d hh:mm:ss"我想让它返回"yyyy-MM-dd"这样的格式,应该怎么做?

解决方案 »

  1.   


    public string GetFormatDate(Date date)
    {
        return date.ToString("yyyy-MM-dd");
    }
    在表示层调用方法
      

  2.   

    表示层比较不灵活,我想在SQL语句中实现,有办法吗?
      

  3.   

    可以利用.tostring()方法先将时间值转化成字符串,再用substr(....)字符串截取函数进行截取你所要的时间格式。具体参数不记得了,可以到网上搜索下。
      

  4.   

    直接用sql也可以,但比在页面转换麻烦:
    sql:
    select Convert(varchar(4),year(日期字段))+'-'+Convert(varchar(2),month(日期字段))+'-'+Convert(varchar(2),day(日期字段)) from 表
      

  5.   

    select convert(varchar(10),时间列名,120) from 表名--convert(varchar(10),时间列名,120)     就是将输出的值进行转换,120是日期格式代码这样输入的日期格式就是。YYYY-MM-DD
      

  6.   

    再给你点其他格式
    使用convert来取得datetime数据类型样式
    语句及                                      查询结果:
    Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
    Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
    Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
    Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
    Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
    Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
    Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
    Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
    Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
    Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
    Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
    Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16
    Select CONVERT(varchar(100), GETDATE(), 12): 060516
    Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
    Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
    Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
    Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
    Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
    Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
    Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
    Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
    Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
    Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
    Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
    Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
    Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
    Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
    Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
    Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
    Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
    Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
    Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
    Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
    Select CONVERT(varchar(100), GETDATE(), 112): 20060516
    Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
    Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
    Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
    Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
    Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
    Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
    Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM
      

  7.   

    select convert(varchar(20),getdate(),23)
    --2010-04-05
      

  8.   

    楼上好像差不多了
    SELECT M_ID, M_Content, Convert(varchar(20),M_Time_S,23) FROM Messages ORDER BY M_Time_S DESC
      

  9.   


    "SELECT M_ID, M_Content, CONVERT(varchar(100), M_Time_S, 23) FROM Messages ORDER BY M_Time_S DESC"
      

  10.   

    顶12楼MM
    SELECT CONVERT(varchar(100),日期字段, 23) FROM 表