- 1、计算字符串字符数量CHAR_LENGTH('123abc')和字符串长度的函数
备注:一个汉字占三个字节
SELECT CHAR_LENGTH('123abc'),LENGTH('123中国');
- 2、合并字符串函数CONCAT(str1,str2,...)
SELECT CONCAT('abc','def');
有字符串为空,则会返回空
SELECT CONCAT('abc','def',NULL);
=通过分隔符合并字符串
SELECT CONCAT_WS(',','abc','def','123')
结果:abc,def,123
- 3、替换字符串
SELECT INSERT('helloworld',2,4,'good')
结果:hgoodworld
- 4、字母大小写转换函数
SELECT LOWER('AbcB'),LCASE('HELLO worlD'),UPPER('test Java'),UCASE('test Java');
结果:abcb hello world TEST JAVA TEST JAVA
- 5、获取指定长度字符串函数
SELECT LEFT('hello world',2),RIGHT('hello world',2);
结果:he,ld
- 6、填充字符串的函数
SELECT LPAD('hello mysql',12,'??'),RPAD('hello mysql',12,'??');
结果:?hello mysql hello mysql?
- 7、删除空格函数
取消左边空格,取消右边空格,取消左右空格
SELECT LTRIM(' book '),RTRIM(' book '),TRIM(' book ');
- 8、删除指定字符串函数
删除了字符串两端指定的字符
SELECT TRIM('xy' FROM 'xyxboxyokxxyxy');
- 9、重复生成字符串函数
SELECT REPEAT('abc',2);
- 10、空格函数和替换函数
SELECT CONCAT('(',SPACE(10),')');
下面使用mysql替换字符串中world
SELECT REPLACE('helloworld','world','mysql');
- 11、比较字符串大小
SELECT STRCMP('abc','abc'),STRCMP('abc','ab'),STRCMP('abc','abc1');
- 12、获取子串
从2开始截取长度为4
SELECT SUBSTR('helloworld' FROM 2 FOR 4);
SELECT MID('helloworld',2,4);
- 13、匹配子串开始位置的函数,以下三个函数效果相同,结果都是3
SELECT LOCATE('llo','helloworld'),POSITION('llo' IN 'helloworld'),INSTR('helloworld','llo');
- 14、字符串逆序
SELECT REVERSE('abcd');
- 15、返回指定字符串位置的函数
返回字符串l首次出现在后面参数的位置,参数完全相同才有返回值,否则返回0
SELECT FIELD('hello','hello','tttt','sfasfaldfs');
- 16、返回子串位置的函数
SELECT FIND_IN_SET('world','helloworld,world')
- 17、选取字符串的函数
SELECT MAKE_SET(1,'a','b','c')
结果:a