用case when 就行了
解决方案 »
- 请教如何建立一个三级分类数据库的问题,很急,100分+请吃饭
- 对表进行insert,update时如何进行防出错处理,比如表锁死之类
- sql 横向合并
- 简单sql删除语句
- 这样的表查询语句该怎么写?
- 使用T-SQL语句实现该数据库中各表间的级联删除。(用触发器怎么实现)
- [Help]超级郁闷的问题!!!!!!!!!
- 我的数据库里的字段是繁体的,用程序取出后,成了乱码!大家帮我看看,急死了!昨天问了,但没有答案
- SQL!SQL!SQL!SQL!SQL!SQL!SQL!SQL!
- 我用了SQL SERVER 2000个人版为什么无法加载网站数据?高手求救!!!
- 给大家拜年,祝大家发财!
- 如何得到SQL Server2000的结果集中行的行号
declare @a varchar(1000)
set @a='id,cid,fid,id,aa,id'
select replace(replace(replace(replace(''''+@a+'''',',',''','''),'''id''','''xx'''),''',''',','),'''','')
-------------------------------------------------------------------
xx,cid,fid,xx,aa,xx
假设你是表里的字段要替换
update 表 set 某字段=replace(replace(replace(replace(''''+某字段+'''',',',''','''),'''id''','''xx'''),''',''',','),'''','')注意replace对ntext类型无效.
2.若字符串a的位置是不固定的,
create procedure sp1 @a varchar(100),@b varchar(100)
as
select replace(replace(replace (' '+@a+' ',' '+@b+',','xx,'),','+@b+' ',',xx'),','+@b+',',',xx,')
goexec sp1 "id,cid,fid,id,aa,id","id"
结果如上^-^
replace(','+a+',',',id,',',xx,')
用这种思路来做
2.若字符串a的位置是不固定的,”
纠正上面的说法,打得太快,粗心了,应该是id的位置二、“replace(replace(replace(' '+@a+' ',' '+@b+',','xx,'),','+@b+' ',',xx'),','+@b+',',',xx,')”
上面的replace嵌套就是为了判断id是否是单独的,从而对其置换,我已经在SQL Server 2000上运行过了^-^