首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

SQL的表中某字段含有一些特定字符,怎么取出其中第2个"|"与第3个"|"之间的字符呢

2012-05-27 
SQL的表中某字段含有一些特定字符,如何取出其中第2个|与第3个|之间的字符呢?怎么取第二个|后,第三个

SQL的表中某字段含有一些特定字符,如何取出其中第2个"|"与第3个"|"之间的字符呢?
怎么取第二个"|"后,第三个"|"前的字符?

67|085B|RB|SDE
ER322|K5|34|123

....

要求取出其中的
 RB
 34 

...

请指教,谢谢!

[解决办法]

SQL code
67|085B|RB|SDE这个一共多少|?如果在4个之内 可以select parsename(replace(col,'|','.'),2) from tb
[解决办法]
SQL code
declare @a1 varchar(30),@a2 varchar(1)set @a2='|'set @a1='1|2|'select case when len(@a1)-len(replace(@a1,'|',''))>2 then substring(@a1,charindex(@a2,@a1,charindex(@a2,@a1,1)+1)+1,charindex(@a2,@a1,charindex(@a2,@a1,charindex(@a2,@a1,1)+1)+1)-charindex(@a2,@a1,charindex(@a2,@a1,1)+1)-1)            else '' end
[解决办法]
探讨

高手。可否结合在前面的代码中呢? 合在一块运行。望再次帮忙,谢谢!

热点排行
Bad Request.