oracle求字段中指定字符串出现个数

下面结果集中RESULT字段,分别求出 '不考核 ','部分报送','未报送' 出现的次数

 

 sql实现:

select  
length(replace(wm_concat(RESULT), '不考核', '不考核|')) - length(wm_concat(RESULT)) bkh,
length(replace(wm_concat(RESULT), '部分报送', '部分报送|')) - length(wm_concat(RESULT)) bfbs,
length(replace(wm_concat(RESULT), '未报送', '未报送|')) - length(wm_concat(RESULT)) wbs
from TABLENAME

查询结果:

 

sql解读:

length(string) 计算string所占的字符长度:返回字符串的长度,单位是字符。

replace() 函数是用另外一个值来替代字符串中的某个值。用法: replace(原字段,“原字段旧内容“,“原字段新内容“)

wm_concat(column) 函数实现字段合并,column表示需要合并的列名称。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章