求一条Update语句,谢谢!

csharpcn 2008-09-10 09:47:48
由一个字段内有很多
类似
<a href='http://www.abc.com/abc/abc/123.htm' target='_blank'></a>
的内容

我想更新之后把这些空链接(就是<a></a>之间没有东西的链接)的都去掉


请问这条语句怎么写?
谢谢?
...全文
178 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
Herb2 2008-09-11
  • 打赏
  • 举报
回复
declare @bc varchar(100),@ec varchar(100)

select @bc = '%<a%></a>%',@ec='></a>'

while exists(select 1 from tb where patindex(@bc,col)>0)

update tb set col = stuff(col,patindex(@bc,col)
,charindex('@ec,col,patindex(@bc,col))
-patindex(@bc,col)+5,'')
where patindex(@bc,col)>0
Herb2 2008-09-11
  • 打赏
  • 举报
回复
while exists(select 1 from tb where patindex('%<a%></a>%',col)>0)
update tb set col = stuff(col,patindex('%>%></a>%',col)
,charindex('></a>',col,patindex('%>%></a>%',col))
-patindex('%>[^<]%</a>%',col)+5,'')
where patindex('%>%></a>%',col)>0
Herb2 2008-09-11
  • 打赏
  • 举报
回复
while exists(select 1 from tb where patindex('%>[^<]%</a>%',col)>0)
update tb set col = stuff(col,patindex('%>[^<]%</a>%',col)+1
,charindex('</a>',col,patindex('%>[^<]%</a>%',col)+1)
-patindex('%>[^<]%</a>%',col)-1,'')
where patindex('%>[^<]%</a>%',col)>0
QQQQAnnie 2008-09-11
  • 打赏
  • 举报
回复
楼上N多的方法了
viva369 2008-09-10
  • 打赏
  • 举报
回复
UPDATE TableN
SET ColName=REPLACE(ColName,'<a></a>','')
jacklinchen 2008-09-10
  • 打赏
  • 举报
回复
你可以找到字段所有内容之中含有'></a>'的记录,然后将<a ...></a>的内容替换为''
幸运的意外 2008-09-10
  • 打赏
  • 举报
回复
UPDATE 表
SET ColName=REPLACE(ColName,'<a> </a>','')
WHERE ColName = '%<a></a>%'
csharpcn 2008-09-10
  • 打赏
  • 举报
回复
对不起,可能是我没有说明白

由一个字段内有很多
类似
<a href='http://www.abc.com/abc/abc/123.htm' target='_blank'> </a>
的内容

比如
字段内的内容是

字段内的文字 <a href='http://www.abc.com/123.htm' target='_blank'> </a>字段内的其他文字 <a href='http://www.abc.com/abc/abc/123.htm' target='_blank'>不去掉文字 </a>字段内其他文字 <a href='http://www.abc.com/456.htm'> </a>还是文字

经过替换以后形成
字段内的文字字段内的其他文字 <a href='http://www.abc.com/abc/abc/123.htm' target='_blank'>不去掉文字 </a>字段内其他文字还是文字


我想更新之后把这些空链接(就是 <a> </a>之间没有东西的链接)的都去掉


请问这条语句怎么写?
谢谢?

不知道这次说没说明白。
csharpcn 2008-09-10
  • 打赏
  • 举报
回复
对不起,可能是我没有说明白

由一个字段内有很多
类似
<a href='http://www.abc.com/abc/abc/123.htm' target='_blank'> </a>
的内容

比如
字段内的内容是

字段内的文字<a href='http://www.abc.com/123.htm' target='_blank'> </a>字段内的其他文字<a href='http://www.abc.com/abc/abc/123.htm' target='_blank'>不去掉文字</a>字段内其他文字<a href='http://www.abc.com/456.htm'></a>还是文字

经过替换以后形成
字段内的文字字段内的其他文字<a href='http://www.abc.com/abc/abc/123.htm' target='_blank'>不去掉文字</a>字段内其他文字还是文字


我想更新之后把这些空链接(就是 <a> </a>之间没有东西的链接)的都去掉


请问这条语句怎么写?
谢谢?

不知道这次说没说明白。
中国风 2008-09-10
  • 打赏
  • 举报
回复
update Table1
set COl=''
where
len(substring(Col,charindex('<a',Col)+2,charindex('</a>',COL)-3))=0 and Col like '<a%</a>%'
昵称被占用了 2008-09-10
  • 打赏
  • 举报
回复
UPDATE TableN
SET ColName=REPLACE(ColName,'<a> </a>','')
WHERE ColName LIKE '%<a> </a>%')
  • 打赏
  • 举报
回复
update tb
set 列=''
where rtrim(substring(列,2,len(列)-4)) is null
utpcb 2008-09-10
  • 打赏
  • 举报
回复
UPDATE TableN
SET ColName=REPLACE(ColName,'<a> </a>','')
WHERE ColName LIKE '%<a>%</a>%')
dawugui 2008-09-10
  • 打赏
  • 举报
回复
[Quote=引用楼主 csharpcn 的帖子:]
由一个字段内有很多
类似
<a href='http://www.abc.com/abc/abc/123.htm' target='_blank'> </a>
的内容

我想更新之后把这些空链接(就是 <a> </a>之间没有东西的链接)的都去掉


请问这条语句怎么写?
谢谢?
[/Quote]

replace(col , '<a> </a>' , '')
Garnett_KG 2008-09-10
  • 打赏
  • 举报
回复


UPDATE TableN
SET ColName=REPLACE(ColName,'<a> </a>','')
WHERE ColName LIKE '%<a>%</a>%')

viva369 2008-09-10
  • 打赏
  • 举报
回复
update 表 set 列 = '' where 列 = '<a></a>'
viva369 2008-09-10
  • 打赏
  • 举报
回复
delete 表 where 列 = '<a></a>'
???
zhouy1018 2008-09-10
  • 打赏
  • 举报
回复
我觉得你可以找到字段所有内容之中'>'和'<'的位置,然后判断'>'和'<'之中是否为空,如果为空,则删除!
frogbag 2008-09-10
  • 打赏
  • 举报
回复
这个一句单独的SQL是不能做到的,你可以写个存储过程,或者单独写个函数,再在SQL中用函数

34,576

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧