天天看点

sql中的trim()以及translate()函数

oracle 函数

介绍一下sql中的trim()以及translate()函数

首先说一下trim(),trim()和我们接触的编程语言一样也是用来去掉前后空格的,LTRIM(),RTRIM(),TRIM()【mysql函数】

sql中的trim()以及translate()函数

可见已经去掉了左边的空格,RTIRM()也是一样的用法我们就不在多说,接下来重点说一下mysql函数TRIM()。

TRIM ( [ [位置] [要移除的字串] FROM ] 字串): [位置] 的可能值为 LEADING (起头), TRAILING (结尾), or BOTH (起头及结尾)。 这个函数将把 [要移除的字串] 从字串的起头、结尾,或是起头及结尾移除。如果我们没有列出 [要移除的字串] 是什么的话,那空白就会被移除。

sql中的trim()以及translate()函数

没有列出要移除的字串,前后空格都已经去掉了

sql中的trim()以及translate()函数
sql中的trim()以及translate()函数

看样子只能移除第一个并且匹配的字符了。。。。

接下来说一下translate()函数,他也是对字符的操作(oracle 函数)

语法:

translate(string,from_str,to_str)

执行时,translate依次检查string中的每个字符是否在from_str中存在,如果不存在,那么这个string中的字符直接返回,如果存在,translate会记下这个字符在from_str中的位置,然后用to_str的同样位置的字符代替string中的这个字符作业返回结果

sql中的trim()以及translate()函数

下面说一下特殊情况

<1>to_str长度小于from_str

sql中的trim()以及translate()函数

3在‘’123‘’中存在且为第三个位置,但是‘’ac‘’的长度为2 ,所以返回结果为ac

<2>to_str为空串或空返回结果为空值

sql中的trim()以及translate()函数

<3>此函数不能用于clob类型字段

另外与其相似的函数还有replace()函数这里就不多说了,mysql oracle都可以使用,(不存在不替换)

sql中的trim()以及translate()函数