0

0

深入理解MySQL进阶漂流记(三)

黄舟

黄舟

发布时间:2017-03-08 13:54:32

|

1284人浏览过

|

来源于php中文网

原创


函数

数学函数

这里写图片描述
需求:
1)-123的绝对值;
2)100,88,33,156取出最大值;
这里写图片描述

聚合函数

MySQL有一组函数是特意为求和或者对表中的数据进行集中概括而设计的,这些函数经常用在包含group by从句的select查询中,当然,它们也可以用于无group的查询
这里写图片描述
1)这一组函数中,最常用到的是COUNT()函数,计算出结果集中至少包含一个非null的值的行数
select count(*) from students;
2)MIN()和MAX()函数返回数字集的最小或最大值
select min(score) from data;//返回最小值
select max(age) from data;返回最大值
需求:
新建data表,字段为score,添加两条数据,分别为29和34,计算平均值和最小值
这里写图片描述

字符串函数

MySQL数据库不仅包含数字数据,还包含字符串,下面列举一些常用的:
通过length()函数可以获得一个字符串的长度
select length(‘abcdefg’);//结果为7
通过trim()函数可以让我们在剪切值时指定去除格式,还可以决定是从字符串的首部,尾部,两边剪切。
select trim(’ red hair’);//去掉两边空格
select trim(leading ‘!’ from ‘!!!heihei!!!’);//去掉首部“!”符号
concat()函数将提供的参数连接成一个字符串
select concat(‘woyao’,’yaosini’);//结果为woyaoyaosini

日期时间函数

1)使用now()函数获取当前的日期和时间,将以YYYY-MM-DD HH:MM:SS的格式返回当前的日期和时间
select now();//返回当前时间
2)单独获取日期和时间,可以使用curdate()和curtime()函数
select curtime();//当前时间,格式为 HH:MM:SS
select curdate();//当前日期,格式为 YYYY-MM-DD
3)week()函数返回指定的日期是一年的第几个星期,而yearweek()函数返回指定的日期是哪一年的哪一个星期
select week(‘2017-02-24’);//结果为8
select yearweek(20170224);//结果为200408

加密函数(了解一下)

这里写图片描述
password()函数用来创建一个经过加密的密码字符串,它适合于插入到MySQL的安全系统。这个加密过程是不可以逆转的, 和UNIX密码加密使用不同的算法。
还可以通过ENCRYPT()函数使用UNIX crypt()系统加密字符串,ENCRYPT()函数接收要加密的字符串 和(可选的)用于加密过程的salt(一个可以唯一确定口令的字符串,就像钥匙一样)。
也可以使用ENCODE()函数和DECODE()函数来加密和解密字符串,ENCODE()有两个参数:被加密的字符串和作为加密基础的密钥;

控制流函数

MySQL提供了4个函数是用来进行条件操作的。这些函数实现了sql的条件逻辑,允许开发者将一些应用程序业务逻辑转换到 数据库后台。
这里写图片描述
这些函数的第一个是ifnull()函数,它有两个参数,并且对第一个参数进行判断。如果第一个参数不是null, 函数就会向调用者返回第一个参数,如果是null,返回第二个参数。
这里写图片描述
nullif()函数将会检验提供的两个参数是否相等,如果相等,则返回null,不相等,返回第一个参数。
if()函数有三个参数,第一个是要被判断的表达式,如果表达式为真,if()函数会返回第二个参数,为假,返回第三个参数。 if()函数在只有两种结果时才适合使用;

Open Voice OS
Open Voice OS

OpenVoiceOS是一个社区驱动的开源语音AI平台

下载
格式化函数

MySQL还有一些函数是特意为格式化数据设计的
这里写图片描述
比较常用是format()函数,它可以把大的数值格式化为以逗号间隔的易读的序列。format()的第一个参数是被 格式化的数据,第二个参数是结果的小数位数

数据转换函数

为了进行数据类型转换,MySQL提供了cast()函数,它可以把一个值转化为指定的数据类型
通常情况下,当使用数值操作时,字符串会自动的转化为数字;
select 1+’99’;//结果为100
select 1+cast(‘99’ as signed);//结果为100
我们可以强制许多日期和时间函数[包括now(),curtime()和curdate()函数],把它们返回的值作为一个数而不是字符串输出 ,只需要在数字的环境中使用这些函数或者把它们转化为数字
这里写图片描述

系统信息函数

这里写图片描述
database(),user()和version()函数分别可以返回当前所选数据库,当前用户和MySQL版本的信息:

这里写图片描述

相关专题

更多
Golang gRPC 服务开发与Protobuf实战
Golang gRPC 服务开发与Protobuf实战

本专题系统讲解 Golang 在 gRPC 服务开发中的完整实践,涵盖 Protobuf 定义与代码生成、gRPC 服务端与客户端实现、流式 RPC(Unary/Server/Client/Bidirectional)、错误处理、拦截器、中间件以及与 HTTP/REST 的对接方案。通过实际案例,帮助学习者掌握 使用 Go 构建高性能、强类型、可扩展的 RPC 服务体系,适用于微服务与内部系统通信场景。

6

2026.01.15

公务员递补名单公布时间 公务员递补要求
公务员递补名单公布时间 公务员递补要求

公务员递补名单公布时间不固定,通常在面试前,由招录单位(如国家知识产权局、海关等)发布,依据是原入围考生放弃资格,会按笔试成绩从高到低递补,递补考生需按公告要求限时确认并提交材料,及时参加面试/体检等后续环节。要求核心是按招录单位公告及时响应、提交材料(确认书、资格复审材料)并准时参加面试。

28

2026.01.15

公务员调剂条件 2026调剂公告时间
公务员调剂条件 2026调剂公告时间

(一)符合拟调剂职位所要求的资格条件。 (二)公共科目笔试成绩同时达到拟调剂职位和原报考职位的合格分数线,且考试类别相同。 拟调剂职位设置了专业科目笔试条件的,专业科目笔试成绩还须同时达到合格分数线,且考试类别相同。 (三)未进入原报考职位面试人员名单。

37

2026.01.15

国考成绩查询入口 国考分数公布时间2026
国考成绩查询入口 国考分数公布时间2026

笔试成绩查询入口已开通,考生可登录国家公务员局中央机关及其直属机构2026年度考试录用公务员专题网站http://bm.scs.gov.cn/pp/gkweb/core/web/ui/business/examResult/written_result.html,查询笔试成绩和合格分数线,点击“笔试成绩查询”按钮,凭借身份证及准考证进行查询。

6

2026.01.15

Java 桌面应用开发(JavaFX 实战)
Java 桌面应用开发(JavaFX 实战)

本专题系统讲解 Java 在桌面应用开发领域的实战应用,重点围绕 JavaFX 框架,涵盖界面布局、控件使用、事件处理、FXML、样式美化(CSS)、多线程与UI响应优化,以及桌面应用的打包与发布。通过完整示例项目,帮助学习者掌握 使用 Java 构建现代化、跨平台桌面应用程序的核心能力。

63

2026.01.14

php与html混编教程大全
php与html混编教程大全

本专题整合了php和html混编相关教程,阅读专题下面的文章了解更多详细内容。

34

2026.01.13

PHP 高性能
PHP 高性能

本专题整合了PHP高性能相关教程大全,阅读专题下面的文章了解更多详细内容。

74

2026.01.13

MySQL数据库报错常见问题及解决方法大全
MySQL数据库报错常见问题及解决方法大全

本专题整合了MySQL数据库报错常见问题及解决方法,阅读专题下面的文章了解更多详细内容。

20

2026.01.13

PHP 文件上传
PHP 文件上传

本专题整合了PHP实现文件上传相关教程,阅读专题下面的文章了解更多详细内容。

31

2026.01.13

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
MySQL 教程
MySQL 教程

共48课时 | 1.8万人学习

MySQL 初学入门(mosh老师)
MySQL 初学入门(mosh老师)

共3课时 | 0.3万人学习

简单聊聊mysql8与网络通信
简单聊聊mysql8与网络通信

共1课时 | 793人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号