MySQL字符串截取小结

MySQL截取字符串函数:left()、right()、substring()、substring_index()。

从左开始截取字符串

用法:left(str, length),即:left(被截取字符串, 截取长度)

SELECT LEFT('www.baidu.com',3);
--  结果为:www

从右开始截取字符串

用法:right(str, length),即:right(被截取字符串, 截取长度)

SELECT RIGHT('www.baidu.com',3);
-- 结果为:com

截取特定长度的字符串

用法:

  • substring(str, pos),即:substring(被截取字符串, 从第几位开始截取,pos开始位置是1)

  • substring(str, pos, length),即:substring(被截取字符串,从第几位开始截取,截取长度,pos开始位置是1)

  1. 从字符串的第n个字符开始读取直至结束

    SELECT SUBSTRING('www.baidu.com', 1);
    -- 结果为:www.baidu.com
    
  2. 从字符串的第0个字符开始读取,结果为空

    SELECT SUBSTRING('www.baidu.com', 0);
    -- 结果为:空
    
  3. 从字符串的第1个字符开始,只取3个字符

    SELECT SUBSTRING('www.baidu.com', 1,  3);
    -- 结果为:www
    
  4. 从字符串的倒数第1个字符开始读取,直至结束

    SELECT SUBSTRING('www.baidu.com', -1) ;
    --  结果为:m
    
  5. 从字符串的倒数第n个字符开始读取,只取3个字符

    SELECT SUBSTRING('www.baidu.com', -1,  3);
    --  结果为:m
    SELECT SUBSTRING('www.baidu.com', -3,  3);
    -- 结果为:com
    

按关键字进行读取

用法:substring_index(str, delim, count),即:substring_index(被截取字符串,关键字,关键字出现的次数)

  1. 截取第二个“.”之前的所有字符

    SELECT  SUBSTRING_INDEX('www.baidu.com', '.', 2);
    -- 结果为:www.baidu
    
  2. 截取倒数第二个“.”之后的所有字符

    SELECT  SUBSTRING_INDEX('www.baidu.com', '.', -1);
    -- 结果为:com
    
  3. 如果关键字不存在,则返回整个字符串

    SELECT  SUBSTRING_INDEX('www.baidu.com', 'aaa', 1);
    -- 结果为:www.baidu.com
    

参考网址

Mysql字符串截取总结:left()、right()、substring()、substring_index()

上一篇:Spring Boot配置类处理


下一篇:《LeetCode零基础指南》(第七讲) 二维数组