日期:2014-05-18  浏览次数:20363 次

SQL 截取字符串
<a href="/">首页</a> >> <a href="/home/ztlm/index.html">专题栏目</a> >> <a href="/home/zlgln/index.html">质量管理年</a> >> 正文


如何获取"质量管理年"里的href,也就是“/home/zlgln/index.html”

------解决方案--------------------
SQL code

declare @x varchar(2000)

select @x='<a href="/">首页</a> >> <a href="/home/ztlm/index.html">专题栏目</a> >> <a href="/home/zlgln/index.html">质量管理年</a> >> 正文'

select reverse(substring(
reverse(substring(@x,1,charindex('质量管理年',@x)-1)),
charindex('>"',reverse(substring(@x,1,charindex('质量管理年',@x)-1)))+2,
charindex('"=ferh',reverse(substring(@x,1,charindex('质量管理年',@x)-1)))-
charindex('>"',reverse(substring(@x,1,charindex('质量管理年',@x)-1)))-2
)) 'href'


href
------------------------
/home/zlgln/index.html

(1 row(s) affected)

------解决方案--------------------
SQL code

declare @sql varchar(500)
declare @pos int
declare @len int
set @sql='<a href="/">首页</a> >> <a href="/home/ztlm/index.html">专题栏目</a> >> <a href="/home/zlgln/index.html">质量管理年</a> >> 正文'
select @sql = reverse(@sql)
select @pos = charindex('<年理管量质>',@sql) + 7
select @len = charindex('=ferh',@sql) - @pos
select reverse(substring(@sql,@pos,@len))