Mysql字符串處理函數(shù)整理 ? ??????? 以下是用過(guò)的一些MySql字符串函數(shù)整理的方法,羅列出來(lái)僅供參考。 1、 非法數(shù)據(jù)替換 函數(shù): replace(str,from_str,to_str) ??????? 查詢后發(fā)現(xiàn)數(shù)據(jù)庫(kù)中存在一些非法數(shù)據(jù),導(dǎo)致看起來(lái)非常難看,數(shù)據(jù)入庫(kù)時(shí)只檢查了前后空格
Mysql字符串處理函數(shù)整理?
??????? 以下是用過(guò)的一些MySql字符串函數(shù)整理的方法,羅列出來(lái)僅供參考。
1、非法數(shù)據(jù)替換
函數(shù):replace(str,from_str,to_str)
??????? 查詢后發(fā)現(xiàn)數(shù)據(jù)庫(kù)中存在一些非法數(shù)據(jù),導(dǎo)致看起來(lái)非常難看,數(shù)據(jù)入庫(kù)時(shí)只檢查了前后空格,沒(méi)有做更嚴(yán)格的去空格處理,只能進(jìn)行事后處理。
update table set cname = replace(cname,' ',''); update table set cname = replace(cname,' ','');
?
??????? 有些字段看似空格,實(shí)際上不是空格的東西。可能是一些全角符合或者其他的,復(fù)制該字段然后粘貼至需替換中即可。
?
2、查詢結(jié)果字段連接
??????? 函數(shù)1:concat(str1,str2,str3)
??????? 函數(shù)2:concat_ws(splitstr,str1,str2,str3)
??????? 函數(shù)3:group_concat(str)
?
函數(shù)1 concat(str1,str2,str3)
??????? 很簡(jiǎn)單,只是將制定列或字符串拼接起來(lái)然后使用。
?
函數(shù)2 concat_ws(splitstr,str1,str2,str3)?
??????? 將str1,str2,str3以splitstr為分隔符進(jìn)行連接并返回結(jié)果。
?
函數(shù)3? group_concat(str)?
??????? 手冊(cè)上說(shuō)明:該函數(shù)返回帶有來(lái)自一個(gè)組的連接的非NULL值的字符串結(jié)果。
??????? 比較抽象,難以理解。
??????? group_concat()會(huì)計(jì)算哪些行屬于同一組,將屬于同一組的列顯示出來(lái)。要返回哪些列,由函數(shù)參數(shù)(就是字段名)決定。分組必須有個(gè)標(biāo)準(zhǔn),就是根據(jù)group by指定的列進(jìn)行分組。
1、測(cè)試語(yǔ)句,
????????
select province,group_concat(name) from city group by province;
??????? 河北??? 保定,石家莊,邯鄲,邢臺(tái)
??????? 北京??? 北京
????????
select group_concat(name) from city;
??????? 保定,石家莊,邯鄲,邢臺(tái),北京
?
函數(shù)4 subString_index(str,indexstr,index)
??????? 以字符標(biāo)識(shí)截取字符串的函數(shù),第二個(gè)參數(shù)為指定字符,第三個(gè)參數(shù)為該字符出現(xiàn)的次數(shù)
????????
select sum(substring_index("0.124M",'M',1)) from dual;
??????? 返回結(jié)果為:0.124
?
?
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com