`
yuelangyc
  • 浏览: 448750 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Mysql字符串处理函数整理

阅读更多

 

        以下是用过的一些MySql字符串函数整理的方法,罗列出来仅供参考。

1、非法数据替换


函数:replace(str,from_str,to_str)
        查询后发现数据库中存在一些非法数据,导致看起来非常难看,数据入库时只检查了前后空格,没有做更严格的去空格处理,只能进行事后处理。

        update table set cname = replace(cname,' ','');
        update table set cname = replace(cname,' ','');

 

        有些字段看似空格,实际上不是空格的东西。可能是一些全角符合或者其他的,复制该字段然后粘贴至需替换中即可。

 

2、查询结果字段连接
        函数1:concat(str1,str2,str3)
        函数2:concat_ws(splitstr,str1,str2,str3)
        函数3:group_concat(str)

 

函数1 concat(str1,str2,str3)
        很简单,只是将制定列或字符串拼接起来然后使用。

 

函数2 concat_ws(splitstr,str1,str2,str3) 
        将str1,str2,str3以splitstr为分隔符进行连接并返回结果。

 

函数3  group_concat(str) 
        手册上说明:该函数返回带有来自一个组的连接的非NULL值的字符串结果。
        比较抽象,难以理解。

        group_concat()会计算哪些行属于同一组,将属于同一组的列显示出来。要返回哪些列,由函数参数(就是字段名)决定。分组必须有个标准,就是根据group by指定的列进行分组。

1、测试语句,
        

select province,group_concat(name) from city group by province;

        河北    保定,石家庄,邯郸,邢台
        北京    北京
        

select group_concat(name) from city;

        保定,石家庄,邯郸,邢台,北京

 

函数4 subString_index(str,indexstr,index)
        以字符标识截取字符串的函数,第二个参数为指定字符,第三个参数为该字符出现的次数
        

select sum(substring_index("0.124M",'M',1)) from dual;

        返回结果为:0.124

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics