MySQL学习笔记13:字符串函数
字符串操作在程序设计中是非常重要的组成部分,而MySQL数据库中的字符串操作却相当简单
需要注意的是:下面所有的函数只是将修改后的结果当查询返回,均不对原数据做出改变
选出指定数量字符
mysql> SELECT RIGHT('nihao',3); +------------------+ | RIGHT('nihao',3) | +------------------+ | hao | +------------------+ 1 row in set (0.00 sec)
这里的RIGHT()函数代表从字符串中选定从右往左数的三个字符
与此类似,还有LEFT()函数
SUBSTRING_INDEX截取字符串
mysql> SELECT SUBSTRING_INDEX('HH,MM,SS',',',2); +-----------------------------------+ | SUBSTRING_INDEX('HH,MM,SS',',',2) | +-----------------------------------+ | HH,MM | +-----------------------------------+ 1 row in set (0.00 sec)
此函数内部的第一个参数代表需要截取的内容,第二个参数代表按什么截取
最后一个是截取到第几个,1是截取到第一个逗号,2是截取到第二个
SUBSTRING截取字符串
mysql> SELECT SUBSTRING('helloworld',1,5); +-----------------------------+ | SUBSTRING('helloworld',1,5) | +-----------------------------+ | hello | +-----------------------------+ 1 row in set (0.00 sec)
此处截取字符串中1~5的内容
UPPER字符串改大写
mysql> SELECT UPPER('hello'); +----------------+ | UPPER('hello') | +----------------+ | HELLO | +----------------+ 1 row in set (0.00 sec)
LOWER字符串改小写
mysql> SELECT LOWER('HELLO'); +----------------+ | LOWER('HELLO') | +----------------+ | hello | +----------------+ 1 row in set (0.00 sec)
REVERSE反转字符串
mysql> SELECT REVERSE('hello'); +------------------+ | REVERSE('hello') | +------------------+ | olleh | +------------------+ 1 row in set (0.00 sec)
LTRIM清除左边多余空格
mysql> SELECT LTRIM(' hello '); +-----------------------+ | LTRIM(' hello ') | +-----------------------+ | hello | +-----------------------+ 1 row in set (0.00 sec)
此外还有RTRIM清除右边空格,TRIM清除两边全部空格
LENGTH返回字符串中的字符数量
mysql> SELECT LENGTH('helo'); +----------------+ | LENGTH('helo') | +----------------+ | 4 | +----------------+ 1 row in set (0.00 sec)