> 文章列表 > mysql查询字符串中某个字符串出现的次数

mysql查询字符串中某个字符串出现的次数

mysql查询字符串中某个字符串出现的次数

例如:查询字符串"jjhshdgl'ddiiiisssddddjjsssjjssjj"中"ss"的个数

1.首先查询"ss"的长度

select length("ss")

2.查询"jjhshdgl'ddiiiisssddddjjsssjjssjj"的长度,记录长度为len1

select length("jjhshdgl'ddiiiisssddddjjsssjjssjj")

3.替换字符串"jjhshdgl'ddiiiisssddddjjsssjjssjj"中的"ss"为空

replace("jjhshdgl'ddiiiisssddddjjsssjjssjj""ss",""),然后计算替换后的长度

总体:select length(replace("jjhshdgl'ddiiiisssddddjjsssjjssjj""ss","")),记录为len2

4.然后长度相减的结果除以"ss"的长度

(len2-len1)/(select length("ss"))

5.全部整体sql:

SELECTdiffCount / ( length( 'ss' ) ) 
FROM( SELECT ( length( 'jjhshdglddiiiisssddddjjsssjjssjj' ) - length( REPLACE ( 'jjhshdglddiiiisssddddjjsssjjssjj', 'ss', '' ) ) ) AS diffCount ) tmp;