有关sql2000 语言的一个问题

来源:百度知道 编辑:UC知道 时间:2024/06/03 20:16:20
在sql2000 数据库的一个表customer内,想把某一字段ccuscode下所有以22开头的记录在第三位后加0。请问大家如何操作,谢谢了
update customer set ccuscode=?????
select * from customer where ccuscode like '22%'
谢谢AskerW的回答,在机器上可以通过。我记的用友实施顾问用的命令好象是
update customer set ccuscode=substring(??????? )
select * from customer where ccuscode like '22%'
请问此命令具体是什么?

如果Ccuscode字段内字符长度不固定,就用下面的
update customer
set ccuscode= left(ccuscode,2)+'0'+right(ccuscode,len(ccuscode)-2)
select * from customer where ccuscode like '22%'

如果Ccuscode字段内字符长度固定,就简单点(假设长度为6,变化后为7位)
update customer
set ccuscode= left(ccuscode,2)+'0'+right(ccuscode,4)
select * from customer where ccuscode like '22%'

刚在我的系统上试验过,没问题的。

先把你要更新的数据找出来
select ccuscode from customer where ccuscode like '22%'
然后循环
一条一条更新,这样比较土的方法。

update customer set ccuscode=left(ccuscode,3)+'0'+right(ccuscode,abcde) where ccuscode like '22%'

其中ABCDE代表的是第三位后面的位数。

导到excel,用置换试试咯