MySQL处理表字段小技巧
MySQL利用正则函数替换值
update dateTest set date=REPLACE(date,'/','') where date REGEXP '\/';
SQL语句讲解: -- 将 所有date字段中包含‘/’的数据中的‘/’替换为‘ ’,即删除字段中的‘/’字符
update dateTest set date=REPLACE(date,SUBSTRING(date,INSTR(date,'/')),'') where date REGEXP '\/'
SQL之INSTR()函数 -- INSTR(date, '/') 返回为INT Example: INSTR('abcdf','d') = 4 SQL之SUBSTRING()函数 -- SUBSTRING('abcdfg',4 ) = abcd
删除字段中的 回车符和换行符
UPDATE table SET table.col = REPLACE(REPLACE(table.col, CHAR(10), ''), CHAR(13),'');
删除表字段的空格:
同时清除前面,后面及中间的空格:
UPDATE et.yuangong SET xingming=TRIM(REPLACE(xingming,' ',''));
清除数据库et中yuangong表xingming字段中的空格(前面后面中间的空格)。
(1)mysql replace 函数
语法:replace(object,search,replace)
意思:把object中出现search的全部替换为replace
- update `news` set `content`=replace(`content`,' ','');//清除news表中content字段中的空格
(2)mysql trim 函数
语法:trim([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
以下举例说明:
- mysql> SELECT TRIM(' phpernote ');
- -> 'phpernote'
- mysql> SELECT TRIM(LEADING 'x' FROM 'xxxphpernotexxx');
- -> 'phpernotexxx'
- mysql> SELECT TRIM(BOTH 'x' FROM 'xxxphpernotexxx');
- -> 'phpernote'
- mysql> SELECT TRIM(TRAILING 'xyz' FROM 'phpernotexxyz');
- -> 'phpernotex'
当我们在使用sql查询的时候,如果数据库中的这个字段的值含有空格(字符串内部,非首尾),或者我们查询的字符串中间有空格,而字段中没有空格。那么我们很有可能就什么都查不到。假如有下面的一张表:
参考文件:https://blog.csdn.net/alzhuzhu/article/details/50623231
本文版权归作者所有,转载请注明出处http://www.cnblogs.com/iloverain/.未经作者同意必须保留此段声明,否则保留追究法律责任的权利.