MySql如何去除字符串前缀,两边,后缀
MySql去除字符串前缀,两边,后缀
效果
语句
?1 | select supplierNum, trim(LEADING '0' from supplierNum) from t_claim_saleclaim |
Trim 函数
?1 | TRIM([{BOTH | LEADING | TRAILING} [str_to_remove] FROM ] string) |
这里,参数
-
BOTH
:表示要从字符串中删除的左右前缀。 -
LEADING
:表示只删除前导前缀。 -
TRAILING
:表示仅删除尾随前缀。 -
Str_to_remove
:表示要从字符串中删除的字符串。
字符串参数表示必须从中删除前缀的字符串。
MySql字符串处理常用方法
1.在mybatis的Mapper.xml的sql语句中
不能直接用大于号、小于号要用转义字符
如果用小于号会报错误如下:
org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org.xml.sax.SAXParseException: The content of elements must consist of well-formed character data or markup。
转移符 | 原字符 | 中文意思 |
---|---|---|
< | < | 小于符号 |
> | > | 大于符号 |
& | & | 和 |
' | ‘ | 单引号 |
" | “ | 双引号 |
2.trim()的使用
trim函数可以过滤指定的字符串:
- 完整格式:TRIM([{BOTH | LEADING | TRAILING} [remstr] FROM] str)
- 简化格式:TRIM([remstr FROM] str)
返回字符串 str , 其中所有remstr前缀和/或后缀都已被删除。若分类符BOTH、LEADIN或TRAILING中没有一个是给定的,则假设为BOTH。remstr为可选项,在未指定情况下,可删除空格。
?1 2 3 4 5 6 7 8 | mysql> SELECT TRIM( ' bar ' ); -> 'bar' mysql> SELECT TRIM(LEADING 'x' FROM 'xxxbarxxx' ); --删除指定的首字符 x -> 'barxxx' mysql> SELECT TRIM(BOTH 'x' FROM 'xxxbarxxx' ); --删除指定的首尾字符 x -> 'bar' mysql> SELECT TRIM(TRAILING 'xyz' FROM 'barxxyz' ); --删除指定的尾字符 x -> 'barx' |
mysql中的去除左空格函数:
LTRIM(str);
?1 2 | mysql> SELECT LTRIM( ' barbar' ); -> 'barbar' |
mysql中的去除右空格函数:
RTRIM(str):
?1 2 | mysql> SELECT RTRIM( 'barbar ' ); -> 'barbar' |
3.字符串拆分:SUBSTRING_INDEX(str, delim, count)
参数解说
参数名 | 解释 |
---|---|
str | 需要进行替换的字符串 |
from_str | 需要被替换的字符串 |
to_str | 需要替换的字符串 |
示例:
SUBSTRING_INDEX(s.params,'&',1) --获取第一个&分隔符之前的所有字符
4.替换函数:replace( str, from_str, to_str)
参数名 | 解释 |
---|---|
str | 需要进行替换的字符串 |
from_str | 需要被替换的字符串 |
to_str | 需要替换的字符串 |
示例:
REPLACE('label_name=[茶光村65号901]','label_name=[','') --将label_name=[替换为空格
5.获取字符串长度:LENGTH( str )
参数名 | 解释 |
---|---|
str | 需要计算长度的字符串 |
示例:
where LENGTH(h.hot_words)>0 --判断h.hot_words字段长度大于0的数据
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/qq_16165281/article/details/122360302
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。