+ -
当前位置:首页 → 问答吧 → 如何整体去除 横杠以后的字符,如 2998-aa 修正为 2998,谢谢

如何整体去除 横杠以后的字符,如 2998-aa 修正为 2998,谢谢

时间:2011-12-08

来源:互联网

如何整体去除 横杠以后的字符,如 2998-aa 修正为 2998,谢谢
---------------------------------
几万条记录,要处理,求最精简的代码

作者: aa800629   发布时间: 2011-12-08

substring(col,1,charindex('-',col))

作者: HEROWANG   发布时间: 2011-12-08

SQL code
update tb set col=left(col,charindex('-',col))

作者: qianjin036a   发布时间: 2011-12-08

如果没有-,那以前的就over了。

作者: liangCK   发布时间: 2011-12-08

SQL code
update tb set col=left(col,charindex('-',col)) where charindex('-',col)>0

作者: fredrickhu   发布时间: 2011-12-08

引用 3 楼 liangck 的回复:
如果没有-,那以前的就over了。

考虑的对


SQL code
update tb set col=case charindex('-',col)!=0 then substring(col,1,charindex('-',col)) end

作者: HEROWANG   发布时间: 2011-12-08

SQL code

update tb set col1=case when charindex('-',col1)>0 then substring(col1,1,charindex('-',col1)-1) else col1 end


楼上的貌似都忘了减1

作者: pengxuan   发布时间: 2011-12-08

判断下  
没有'-'就直接显示  
有'-'就通过截取'-'以前的字符 截取方式有很多种 看你自己的选择了

作者: HJ_daxian   发布时间: 2011-12-08