MySQL学习笔记-Part 3

系统:win 11 ,环境搭建和win10操作差不多;

MySQL版本:8.0;开发工具:DBeaver;

逻辑上的脉络比较乱,只是按学习进度随笔记一下


函数

算数函数

1.ABS( 数值 ):求绝对值

当 ABS 函数的参数为NULL时,返回值也是NULL。

2.MOD( 被除数,除数 ):求余数

小数没有余数的概念,只能对整数列求余数。

注意:主流的 DBMS 都支持 MOD 函数,只有SQL Server 不支持该函数,其使用%符号来计算余数。

3.ROUND( 对象数值,保留小数的位数 ):四舍五入

注意:当参数“保留小数的位数”为变量(即不是一个const integar)时,可能会遇到错误,请谨慎使用变量。

字符串函数

1.CONCAT(str1, str2, str3):拼接

2.LENGTH( 字符串 ):求字符串长度

3.LOWER( 字符串 ) :字符串转换为小写

注意:LOWER 函数只能针对英文字母使用,它会将参数中的字符串全都转换为小写。该函数不适用于英文字母以外的字符;不影响原本就是小写的字符。

3.5 类似地, UPPER( 字符串 ):字符串转换为大写

4.REPLACE( 对象字符串,替换前字符,替换用字符 ) :字符串替换

即,把“对象字符串”里的“替换前字符”变成“替换用字符”

5.SUBSTRING(对象字符串 FROM 截取的起始位置 FOR 截取的字符数): 字符串截取

注意截取的起始位置从字符串最左侧开始计算,索引值起始为1

6.SUBSTRING_INDEX (原始字符串, 分隔符,n):自定义步长索引截取字符串

该函数用来获取原始字符串按照分隔符分割后第 n 个分隔符之前(或之后)的子字符串;支持正向和反向索引,索引起始值分别为 1 和 -1。

7.REPEAT (string, n):字符串string重复n次

日期函数

1.CURRENT_DATE -- 获取当前日期

2.CURRENT_TIME -- 当前时间

3.CURRENT_TIMESTAMP -- 当前日期和时间

4.EXTRACT (日期元素 FROM 日期) -- 截取日期元素

该函数的返回值并不是日期类型而是数值类型。

转换函数

1.CAST(转换前的值 AS 想要转换的数据类型):数值类型转换

2.COALESCE(数据1,数据2,数据3……) :将NULL转换为其他值

该函数会返回数据中左侧开始第1个不是NULL的值;数据的个数是可变的,因此可以根据需要无限增加。


谓词

谓词就是返回值为真值的函数(真值包括TRUE / FALSE / UNKNOWN)。

谓词主要有以下几个:

LIKE:用于字符串模糊查询,查询格式比较多,大体可以分为前方一致、中间一致和后方一致三种类型。

BETWEEN:用于范围查询,格式为BETWEEN a AND b,且注意为闭区间。

IS NULL / IS NOT NULL:判断是否是NULL;注意不能用“= null”替代,后者是不正确的用法。

IN / NOT IN :判断是否存在于;可以是(NOT)IN <集合1> OR <集合2> OR …,也可以用(NOT)IN (<集合1>,<集合2>, ... )。其集合也可以是一个子查询。

EXISTS / NOT EXISTS:判断是否存在满足某种条件的记录。

CASE表达式

条件分支,有点像switch

CASE WHEN <求值表达式> THEN <表达式>

    WHEN <求值表达式> THEN <表达式>

    WHEN <求值表达式> THEN <表达式>

    …

ELSE <表达式>(这个可以省略不写,不写时默认ELSE NULL)

END  (函数必备)

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容