向Sql Server表中字段追加某字符串

如下表[dbo.ench]:id/en/word1/Shehasgone[go]/go2/gohome/go3/gonewithwind/go4/Helookedabou... 如下表[dbo.ench]:
id/en/word
1/ She has gone[go]/go
2/go home/go
3/gone with wind/go
4/He looked about.[about]/about
【注意:ID=1的英语句已经包含[go]】要改造成:
id/en/word
1/ She has gone[go]/go
2/go home/go
3/gone with wind[go]/go
4/He looked about.[about]/about
【注意,ID=3的追加了[go],但ID=1的没有重复添加;添加的规则是根据word列】
我的说明您明白么?请问如何用Sql语句或存储过程实现?
【注意】
ID为2的仍保持不变:
2/go home/go
展开
 我来答
犀利的胡茬子
推荐于2016-11-02 · TA获得超过663个赞
知道小有建树答主
回答量:853
采纳率:50%
帮助的人:591万
展开全部
declare @word varchar(100),@en varchar(100),@newen
declare 游标名 cursor
for select [en],[word] from ench where id not in (select a.[id] from ench a where a.[en] like '% 'a.[word]' %' or a.[word]' %' or '% 'a.[word])
open 游标名
fetch next from 游标名 into @en,@word
while @@fetch_status = 0
begin
set @newen=@en+'['+@word+']'
update ench
set [en]=@newen
where [en]=@en and [word]=@word
fetch enxt from 游标名 into @en,@word
end
close 游标名
deallocate 游标名
麻烦了点 不知道好不好用 记录要是少的话 用用还可以
简单的想不出来 你自己研究吧
----------------------------------------------------------------
declare @word varchar(100),@en varchar(100),@newen
declare 游标名 cursor
for select [en],[word] from ench where id<>2 and id not in (select a.[id] from ench a where a.[en] like '% 'a.[word]' %' or a.[word]' %' or '% 'a.[word])
open 游标名
fetch next from 游标名 into @en,@word
while @@fetch_status = 0
begin
set @newen=@en+'['+@word+']'
update ench
set [en]=@newen
where [en]=@en and [word]=@word
fetch enxt from 游标名 into @en,@word
end
close 游标名
deallocate 游标名
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
全员恶人eK775
2009-07-27 · 超过33用户采纳过TA的回答
知道答主
回答量:182
采纳率:0%
帮助的人:88.2万
展开全部
按照你说的规则ID=2应该为2/go home[go]/go才对,但先不管了,下面的应该有点接近了。
update ench set en=en+'['+word+']' where charindex(word,en)=0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
木森耙耙
2009-07-27 · TA获得超过436个赞
知道小有建树答主
回答量:907
采纳率:0%
帮助的人:576万
展开全部
update dbo.ench set en=en+'[go]' where word='go' and charindex('[go]',en)=0
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
csuxp2008
2009-07-27 · TA获得超过6485个赞
知道大有可为答主
回答量:4704
采纳率:50%
帮助的人:2471万
展开全部
为什么不直接update该字段
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式