mysql常用函数(repalce,trim)

mysql批量去掉/替换某个字段字符中字符?

(1)replace 函数
语法:replace(object,search,replace)
意思:把object中出现search的全部替换为replace
案例:
  1. update  tableName set  colunmName=replace(`content`,' ','');//清除tableName表中content字段中的空格  

  UPDATE cms_organization SET jsyxq=CONCAT(REPLACE(jsyxq,'.','-'),'-01') WHERE length(jsyxq)<=7;

  解析:将表cms_organization中jsyxq字段"."替换为“-”;又使用concat函数在字段后拼接了‘-01’;使用length获取字段jsyxq值的长度

(2)mysql trim 函数
 
语法:trim([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
 
以下举例说明:
  1. mysql> SELECT TRIM(' phpe  ');      //去掉前后空格
  2. -> 'phpe'  
  1. mysql> SELECT TRIM(LEADING 'x' FROM 'xxxphpexxx');   //使用leading去除字段值面匹配的字符
  2. -> 'phpexxx'  

  示例:SELECT TRIM(LEADING '2016-' FROM jsyxq) from cms_organization where jsyxq is not null;   //将字段jsyxq值中开头处匹配‘2016-'字符去掉

  1. mysql> SELECT TRIM(BOTH 'x' FROM 'xxxphxxx');        //使用both中去除字段值前/后面匹配的字符
  2. -> 'ph'  
  1. mysql> SELECT TRIM(TRAILING 'xyz' FROM 'phpexxyz');     //使用trailing中去除字段值匹配的字符
  2. -> 'phpex'  

补充示例:UPDATE cms_organization SET jsyxq=CONCAT(left(jsyxq,5),'0',SUBSTR(jsyxq,6)) WHERE length(jsyxq)<10

解析:LEFT(str,len) 返回字符串str的最左面len个字符。

        INSTR(str,substr) 返回子串substr在字符串str中的第一个出现的位置。这与有2个参数形式的LOCATE()相同,除了参数被颠倒。

posted @ 2017-08-19 21:26  小码农成长记  阅读(1157)  评论(0)    收藏  举报