比如说 我有一张表 A 里面set_date 字段中 日期格式是 2012/6/27 如何用SQL 语句把里面的 值改变成 2012-6-27 
数据库里面   日期 这一列 有很多 日期 我只想把/   换成 -    求UPDATE    语句      

解决方案 »

  1.   

    select convert(varchar(10),set_date ,120) from tb
      

  2.   

    CONVERT的日期转换,转换为字符串后可以用字符串函数处理为楼主需要的显示格式。不要重复发帖。
      

  3.   


     select convert(datetime,'2012/6/27',120) 
     
     2012-06-27 00:00:00.000
      

  4.   

    我第一次看到 datetime 也可以指定 120格式奇葩
      

  5.   


    UPDATE A SET set_date= CONVERT(VARCHAR(10),set_date,23)
      

  6.   

    给你看看更奇葩的事情:
    http://blog.csdn.net/dba_huangzj/article/details/7577731
      

  7.   

    在数据库里面都是datetime类型,不存在格式问题.
    如果是在SSMS的查询结果里面想默认显示成2012-6-27,要修改配置.具体在哪儿忘了.
      

  8.   

    如果数据库版本为2008,支持date数据类型
    update A set set_date = cast(set_date as date)
    如果数据库版本为2008一下的
    update A set set_date = replace(set_date,'/','-')当然,你的set_date列数据类型为字符串型的才可以哦