MySQL常见函数——单行函数(字符函数)

这篇博文略微有点长嗷~大侠们请留步!!!!!!

函数概念:
           类似于java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名
好处:
            1、隐藏了实现细节
            2、 提高代码的重用性
调用:
           select    函数名(实参列表)   【 from  表 】;
分类:
       1、单行函数
            字符函数
            数学函数
            日期函数
            流程控制函数
            其他函数
       2、分组函数
             功能:做统计计使用,又称为统计函数、聚合函数、组函数

一、 单行函数

1、字符函数

1)length 获取参数的字节个数

#案例:
查询John的字节长度
注:一个字母占一个字节,所以John的字节长度为 4.
在这里插入图片描述
另外还需要分字符集的情况:
       若编码是gbk,一个汉字占两个字节
       若编码是utf-8,一个汉字占三个字节
在这里插入图片描述
#案例
查询“喋喋MySQL”的字节长度
在这里插入图片描述
这里‘喋喋’是两个汉字,在编码为gbk的情况下,相当于四个字节,最终‘喋喋mysql’一共有9个字节。

2)concat拼接

拼接字符串
在这里插入图片描述

3)substr/substring截取索引后的字符

【PS】那么问题来了, 索引是什么呢?
  定义:索引(Index)是帮助MySQL高效获取数据的数据结构。我们可以简单理解为:快速查找排好序的一种数据结构。

1. 截取时索引从1开始
#从(“喋喋小菜鸡的”中)第一个索引开始截取

在这里插入图片描述
2. 截取从指定索引处后面的索引字符
#从(“喋喋小菜鸡的”中)的第三个索引开始截取
在这里插入图片描述
3. 截取从指定索引处指定字符长度的字符(第二个数字表示占xx位)
#从(“喋喋小菜鸡的”中)的第一个索引开始截取,截取的字符长度为2
在这里插入图片描述
#案例:
姓名中首字符大写,其他字符小写然后用_拼接,显示出来
在这里插入图片描述

4)instr 返回子串第一次出现的索引

在这里插入图片描述
注:
       Instr用于返回子串(‘喋喋’)在大的字符串(‘喋喋小菜鸡’)的起始索引,
       如果找不到,则返回0 。
在这里插入图片描述

5)upper 转换成大写

在这里插入图片描述

6)lower 转换成小写

在这里插入图片描述
#案例:
将姓变大写,名变小写
在这里插入图片描述

7)trim去前后指定的空格和字符

# 案例1:
首先,查询( “MySQL笔记” )的字符长度(为15)
在这里插入图片描述
其次,去掉( “MySQL笔记” )的前后空格
在这里插入图片描述
最后,再查询( “MySQL笔记” )的字符长度(为9)
在这里插入图片描述
由此得知,trim去掉了前后空格。
在这里插入图片描述
# 案例2
如果是两个x,,若想去掉( “MySQL笔记” )前后的空格,那么会以xx为一个单位
在这里插入图片描述

8)ltrim去左边空格

首先,查询( “MySQL笔记” )的字符长度为13
在这里插入图片描述
其次,ltrim去掉左边的空格
在这里插入图片描述
最后,再次查询( “MySQL笔记” )的字符长度,即为9
在这里插入图片描述

9)rtrim去右边空格

同样的,首先,查询( “MySQL笔记” )的字符长度为14
在这里插入图片描述
其次,rtrim去掉右边的空格
在这里插入图片描述
最后,再次查询( “MySQL笔记” )的字符长度为11
在这里插入图片描述

10)replace替换

语法格式如下:
        replace(str,from_str,to_str)
        在字符串 str 中所有出现的字符串 from_str 均被 to_str替换,然后返回这个字符串

#案例:
首先,查询departments的所有信息
在这里插入图片描述
然后,将第一行“Adm”中的d替换为r,返回结果,即可实现。
在这里插入图片描述

11)lpad用指定的字符实现左填充指定长度

语法格式如下:
           lpad( string, padded_length, [ pad_string ] );

           string :准备被填充的字符串;

           padded_length:填充之后的字符串长度,也就是该函数返回的字符串长度,如果这个数量比原字符串的长度要短,lpad函数将会把字符串截取成从左到右的n个字符;

           pad_string:填充字符串,是一个可选参数,这个字符串是要粘贴到string的左边,如果这个参数未写,lpad函数将会在string的左边粘贴空格。

#案例1:
用@来实现左填充(”MySQL笔记“在这里都代表字符,因此其字符长度为7)
在这里插入图片描述
注:
    案例1中的15,指的是字符长度,除了特殊说明为字节的情况下,其他都为字符
    如果本身长度超过指定长度,lpad和rpad都是从右边截断

#案例2
该函数返回的字符串长度(1<“MySQL笔记”),lpad函数将会从左到右的1个字符,即为M
在这里插入图片描述

12)rpad右填充

用 *$ 来实现右填充(”MySQL笔记“在这里都代表字符,因此其字符长度为7)
在这里插入图片描述

看到这里,别忘记给喋喋点赞嗷~~~~
后续更新中,继续关注【手动狗头】

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值