MySQL substr函数使用详解

「作者主页」:士别三日wyx
「作者简介」:CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者
「专栏简介」:此文章已录入专栏《MySQL数据库快速入门》

substr函数

  • 一、作用
  • 二、语法
  • 三、使用
    • 1. 截取字符串
    • 2. 截取查询结果
    • 3. 两种格式
  • 四、substr、substrb、substring的区别

一、作用

从一个内容中,按照指定条件,「截取」一个字符串。这个内容可以是数值或字符串。

二、语法

substr(obj,start,length)

参数

  • obj:从哪个内容中截取,可以是数值或字符串。
  • start:从哪个字符开始截取(1开始,而不是0开始)
  • length:截取几个字符(空格也算一个字符)。

三、使用

1. 截取字符串

1)想要从一个字符串中截取「固定数量」的字符时,可以指定两个参数,即从哪个字符开始截取,截取几个字符。

比如,截取字符串 abcdefg 的第1~3个字符:

MySQL substr函数使用详解_第1张图片

2)如果只给「一个参数」,则默认截取到最后。

比如,从第2个字符开始,截取到最后一个字符:

MySQL substr函数使用详解_第2张图片

3)substr允许参数的「值为负数」,当我们不知道字符串的具体长度,但想要截取最后几个字符时,可以将参数写成负数,从倒数第几个字符串开始截取,截取到最后。

比如,从倒数第4个字符开始截取,截取到最后:

MySQL substr函数使用详解_第3张图片

2. 截取查询结果

1)substr允许将其他语句的查询结果作为参数,进行截取(注意用括号括起来)。

比如,截取查询结果中的前5个字符:

MySQL substr函数使用详解_第4张图片

3. 两种格式

substr还有另外一种语法格式

substr(obj FROM start FOR length)

也就是将参数之间的逗号替换为 form for (不区分大小写),这种形式可以增加代码的可读性。

MySQL substr函数使用详解_第5张图片

四、substr、substrb、substring的区别

1)substr和substring作用相同,可以相互替换。

2)substr以字符串为单位,而substrb以字节为单位(substrb后买的b,是比特的意思,也就是字节)

比如,一个汉字代表3个字节,使用substr截取,参数设1就可以,;但substrb截取,参数就要设3。

3)substr是从1开始,而substrb是从0开始

你可能感兴趣的:(《MySQL数据库快速入门》,mysql,网络安全,python,java,c语言)