如何获取字段中分隔符的个数?(sql语句)

在最近的一个项目中,当向数据库添加数据时,添加了如下一条数据,如 times:  5|4|5|4(可上课次数),pdaimonth: 8|9|10|11(缴费月份),以上分别作为两个段。

然后在取数据的时候,用存储过程取出对应的数据,如 5-8,4-9,3-10,4-11,作为4条数据取出,这个时候就要获取‘|’的个数了(在项目中,‘|’的个数是不定的),然后一堆的 left、right、charindex、len、substring 就可以获取数据了。

还是写方法吧: 
            --用两个字符代替特殊符相减即可         
            declare @num_split int         --分隔符的个数
            select @num_split = len(replace(@sc_rs1_new,'|','||'))-len(@sc_rs1_new)  --@sc_rs1_new  待检测的字符

  
posted on 2007-08-24 19:33  music000  阅读(1331)  评论(1编辑  收藏  举报