mysql 字符转换函数是_MySQL字符串函数

字符串大小写转换

MySQL 字符串大小写转化函数有两对: lower(), uppper() 和 lcase(), ucase() mysql> select lower('DDD');

+--------------+

| lower('DDD') |

+--------------+

| ddd |

+--------------+

mysql> select upper('ddd');

+--------------+

| upper('ddd') |

+--------------+

| DDD |

+--------------+ mysql> select lcase('DDD');

+--------------+

| lcase('DDD') |

+--------------+

| ddd |

+--------------+

mysql> select ucase('ddd');

+--------------+

| ucase('ddd') |

+--------------+

| DDD |

+--------------+

通常情况下,我选择 lower(), upper() 来转换字符串大小写,因为这和其他数据库中函数相兼容。

清除字符串首尾空格

MySQL 中的清除字符串首尾空格函数有三个: ltrim(), rtrim(), trim() mysql> select concat('.', ltrim(' ddd '), '.');

+----------------------------------+

| concat('.', ltrim(' ddd '), '.') |

+----------------------------------+

| .ddd . |

+----------------------------------+

mysql> select concat('.', rtrim(' ddd '), '.');

+----------------------------------+

| concat('.', rtrim(' ddd '), '.') |

+----------------------------------+

| . ddd. |

+----------------------------------+

mysql> select concat('.', trim(' ddd '), '.');

+---------------------------------+

| concat('.', trim(' ddd '), '.') |

+---------------------------------+

| .ddd. |

+---------------------------------+

MySQL 中的 trim 字符串函数,实在是强大。它不仅能消除字符串首尾部的空格,还可以消除我们指定的任意字符。ltrim(), rtrim() 只是它的一个功能子集。来看下 trim 函数的完整语法: 1. trim([{both | leading | trailing} [remstr] from] str)

2. trim([remstr from] str)

1. 清除字符串首部字符。 mysql> select trim(leading '.' from '..ddd..');

+----------------------------------+

| trim(leading '.' from '..ddd..') |

+----------------------------------+

| ddd.. |

+----------------------------------+

2. 清除字符串尾部字符。 mysql> select trim(trailing '.' from '..ddd..');

+-----------------------------------+

| trim(trailing '.' from '..ddd..') |

+-----------------------------------+

| ..ddd |

+-----------------------------------+

3. 清除字符串首尾部字符。 mysql> select trim(both '.' from '..ddd..');

+-------------------------------+

| trim(both '.' from '..ddd..') |

+-------------------------------+

| ddd |

+-------------------------------+

mysql> select trim('.' from '..ddd..');

+--------------------------+

| trim('.' from '..ddd..') |

+--------------------------+

| ddd |

+--------------------------+

trim() 默认清除字符串首尾部的空格。

字符串截取

MySQL 字符串截取函数:left(), right(), substring(), substring_index()。还有 mid(), substr()。其中,mid(), substr() 等价于 substring() 函数,substring() 的功能非常强大和灵活。

1. 字符串截取:left(str, length) mysql> select left('sqlstudy.com', 3);

+-------------------------+

| left('sqlstudy.com', 3) |

+-------------------------+

| sql |

+-------------------------+

2. 字符串截取:right(str, length) mysql> select right('sqlstudy.com', 3);

+--------------------------+

| right('sqlstudy.com', 3) |

+--------------------------+

| com |

+--------------------------+

3. 字符串截取:substring(str, pos); substring(str, pos, len)

3.1 从字符串的第 4 个字符位置开始取,直到结束。 mysql> select substring('sqlstudy.com', 4);

+------------------------------+

| substring('sqlstudy.com', 4) |

+------------------------------+

| study.com |

+------------------------------+

3.2 从字符串的第 4 个字符位置开始取,只取 2 个字符。 mysql> select substring('sqlstudy.com', 4, 2);

+---------------------------------+

| substring('sqlstudy.com', 4, 2) |

+---------------------------------+

| st |

+---------------------------------+

3.3 从字符串的第 4 个字符位置(倒数)开始取,直到结束。 mysql> select substring('sqlstudy.com', -4);

+-------------------------------+

| substring('sqlstudy.com', -4) |

+-------------------------------+

| .com |

+-------------------------------+

3.4 从字符串的第 4 个字符位置(倒数)开始取,只取 2 个字符。 mysql> select substring('sqlstudy.com', -4, 2);

+----------------------------------+

| substring('sqlstudy.com', -4, 2) |

+----------------------------------+

| .c |

+----------------------------------+

我们注意到在函数 substring(str,pos, len)中, pos 可以是负值,但 len 不能取负值。

4. 字符串截取:substring_index(str,delim,count)

4.1 截取第二个 '.' 之前的所有字符。 mysql> select substring_index('www.sqlstudy.com.cn', '.', 2);

+------------------------------------------------+

| substring_index('www.sqlstudy.com.cn', '.', 2) |

+------------------------------------------------+

| www.sqlstudy |

+------------------------------------------------+

4.2 截取第二个 '.' (倒数)之后的所有字符。 mysql> select substring_index('www.sqlstudy.com.cn', '.', -2);

+-------------------------------------------------+

| substring_index('www.sqlstudy.com.cn', '.', -2) |

+-------------------------------------------------+

| com.cn |

+-------------------------------------------------+

4.3 如果在字符串中找不到 delim 参数指定的值,就返回整个字符串 mysql> select substring_index('www.sqlstudy.com.cn', '.coc', 1);

+---------------------------------------------------+

| substring_index('www.sqlstudy.com.cn', '.coc', 1) |

+---------------------------------------------------+

| www.sqlstudy.com.cn |

+---------------------------------------------------+

你可能感兴趣的:(mysql,字符转换函数是)