在SQL2000中一个用于存储用户登陆日期的日期型字段"LoginTime",我设置其默认值为(getdate()),但是其返回值的格式如“2006-11-10 20:01:22”我要问各位高手的是要是想得到如“2006-11-10 ”这样的格式该如何实现呢?但是必须强调一点的是,所得到的那个日期在以后项目中也可以实现日期型的计算!小虾再此先谢各位了~~~~

解决方案 »

  1.   

    试试这个:Convert(char(10),GetDate(),120)
      

  2.   

    关于getdate()的设置:
    select CONVERT(varchar, getdate(), 120 ) 
    2004-09-12 11:06:08 select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),\'-\',\'\'),\' \',\'\'),\':\',\'\') 
    20040912110608 select CONVERT(varchar(12) , getdate(), 111 ) 
    2004/09/12 select CONVERT(varchar(12) , getdate(), 112 ) 
    20040912 select CONVERT(varchar(12) , getdate(), 102 ) 
    2004.09.12 select CONVERT(varchar(12) , getdate(), 101 ) 
    09/12/2004 select CONVERT(varchar(12) , getdate(), 103 ) 
    12/09/2004 select CONVERT(varchar(12) , getdate(), 104 ) 
    12.09.2004 select CONVERT(varchar(12) , getdate(), 105 ) 
    12-09-2004 select CONVERT(varchar(12) , getdate(), 106 ) 
    12 09 2004 select CONVERT(varchar(12) , getdate(), 107 ) 
    09 12, 2004 select CONVERT(varchar(12) , getdate(), 108 ) 
    11:06:08 select CONVERT(varchar(12) , getdate(), 109 ) 
    09 12 2004 1 select CONVERT(varchar(12) , getdate(), 110 ) 
    09-12-2004 select CONVERT(varchar(12) , getdate(), 113 ) 
    12 09 2004 1 select CONVERT(varchar(12) , getdate(), 114 ) 
    11:06:08.177
      

  3.   

    哦,真的可以拉,呵呵,谢谢拉!不过能否解释一下转化成char(10),还有120又是什么意思?
      

  4.   

    如果想要0时0分0秒
    可以用convert(char(10),getdate(),126)
      

  5.   

    取字符串前10位
    120 126是日期格式,前10位都是yyyy-mm-dd
      

  6.   

    120是ODBC 规范
    126是ISO8601
      

  7.   

    http://blog.sina.com.cn/u/3e4c565b010004bp
      

  8.   

    TO:
    哦,真的可以拉,呵呵,谢谢拉!不过能否解释一下转化成char(10),还有120又是什么意思?
    char(10)表示取前10个字符,120表示一种日期格式...上面我列出了很多日期格式,楼主可以自己研究一下...