+ -
当前位置:首页 → 问答吧 → 替换日期列的一部分值怎么做啊

替换日期列的一部分值怎么做啊

时间:2011-11-15

来源:互联网

现在有个表啊,里面有一列日期date,有一些历史数据,格式是yyyymmdd的如20110109的,还有2011-10-19的,现在需要将yyyymmdd格式的数据都转变成yyyy-mm-dd的,而yyyy-mm-dd的保持不变。这个情况怎么做啊????

作者: xiaoyuaixiaofan   发布时间: 2011-11-15

这个字段是什么类型的?
to_date -> to_char 试一下

作者: coolkisses   发布时间: 2011-11-15

引用 1 楼 coolkisses 的回复:
这个字段是什么类型的?
to_date -> to_char 试一下

应该是date 具体我不清楚,我想得写个存储过程吧,需要循环还有substr()函数吧

作者: xiaoyuaixiaofan   发布时间: 2011-11-15

可以用case when,判断包不包含'-'来作区分

作者: rfb0204421   发布时间: 2011-11-15

引用 3 楼 rfb0204421 的回复:
可以用case when,判断包不包含'-'来作区分

嗯 英明啊 如果length是10的就是带-的、

作者: xiaoyuaixiaofan   发布时间: 2011-11-15

用replace 把 -用空替换掉

作者: lxpbs8851   发布时间: 2011-11-15

日期格式 format不可以吗

作者: scrack   发布时间: 2011-11-15

小问题

作者: rakiycl   发布时间: 2011-11-15

可以直接转的,lz试试
SQL code
update table1 set 列名1= to_char(to_date(列名1,'yyyy-mm-dd'),'yyyy-mm-dd') where instr(列名1,'-')=0;
commit;

作者: tx2730   发布时间: 2011-11-15