MySQL【内置函数】
一、日期函数1.1 基础获取时间 / 日期-- 获取当前日期 select current_date(); -- 结果示例2017-11-19 -- 获取当前时间 select current_time(); -- 结果示例13:51:21 -- 获取当前时间戳推荐now() select current_timestamp(); -- 结果示例2017-11-19 13:51:48 select now(); -- 与上一句结果一致1.2 日期的增减运算-- 日期加10天 select date_add(2017-10-28, interval 10 day); -- 结果2017-11-07 -- 日期减2天 select date_sub(2017-10-01, interval 2 day); -- 结果2017-09-291.3 计算两个日期的天数差-- 计算2017-10-10与2016-09-01相差的天数 select datediff(2017-10-10, 2016-9-1); -- 结果4041.4 案例1生日表登记生日的日期2留言表时间处理 创建留言表并筛选 2 分钟内的留言是非常典型的业务场景-- 创建留言表 create table msg ( id int primary key auto_increment, content varchar(30) not null, sendtime datetime -- 留言时间 ); -- 插入测试数据 insert into msg(content,sendtime) values(hello1, now()); insert into msg(content,sendtime) values(hello2, now()); -- 仅显示留言的日期去除时间 select content,date(sendtime) from msg; -- 查询2分钟内发布的留言 select * from msg where date_add(sendtime, interval 2 minute) now();请查询在2分钟内发布的帖子二、字符串函数字符串处理是 MySQL 开发的另一大高频需求比如拼接字符串、替换字符、截取子串、获取字符长度等掌握字符串函数能让文本数据的处理更灵活。instrucase / lcase / lengthleft / rightrtrim/ltrim/trim2.1 charset (str)获取字符串的字符集-- 获取EMP表中ename列的字符集 select charset(ename) from EMP;2.2 concat (str1, str2, ...)字符串拼接常用于自定义结果展示格式比如拼接学生成绩信息-- 格式XXX的语文是XXX分,数学XXX分,英语XXX分 select concat(name, 的语文是,chinese,分,数学是,math,分,英语是,english,分) as 分数 from student;2.3 length (str)获取字符串的字节长度注意该函数按字节计算长度单字节字符字母、数字占 1 个字节多字节字符如中文占多个字节与字符集相关如 UTF-8 中中文占 3 个字节。-- 查询学生姓名的字节长度 select length(name), name from student;2.4 replace (str, old_str, new_str)字符替换 , 将指定字符 / 子串替换为新的内容注意这里只是字符串级别的替换不更改字符串这里的原始的数据-- 将EMP表中姓名里的S替换为上海 select replace(ename, S, 上海) as 新姓名,ename as 原姓名 from EMP;2.5 substring (str, start, length)截取子串从指定位置开始截取指定长度的子串注意MySQL 中字符串起始位置为 12.6 lcase (str)/lower (str)字符串转小写结合截取函数实现首字母小写的需求-- 员工姓名首字母小写其余不变 select concat(lcase(substring(ename, 1, 1)),substring(ename,2)) as 新姓名 from EMP;三、数学函数在处理数值型数据时MySQL 的数学函数能实现绝对值、取整、四舍五入、生成随机数等操作替代手动的数值计算逻辑。四、其他函数除了上述三类核心函数MySQL 还有一些实用的通用函数能解决用户查询、加密、空值处理等场景的问题实用性拉满。user ()查询当前登录 MySQL 的用户database ()显示当前正在使用的数据库加密相关函数md5(str)对字符串进行MD5 摘要生成 32 位的加密字符串常用于密码、敏感信息的轻量加密password(str)MySQL 专用的密码加密函数生成加密后的字符串用于数据库用户密码设置。密码在数据库中不能明文保存所以我们要对密码进行加密~案例演示ifnull (val1, val2)空值处理神器功能如果 val1 为 NULL则返回 val2如果 val1 不为 NULL则返回 val1。常用于解决查询结果中的空值问题避免数据展示异常
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2418730.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!