博客
关于我
MySQL之函数
阅读量:792 次
发布时间:2023-02-11

本文共 2367 字,大约阅读时间需要 7 分钟。

数据库常用函数与操作指南

一、函数的定义

在数据库中,函数是用来封装复杂逻辑的功能模块,简化数据库操作。以下是数据库函数的基本特点及常用示例:

  • 函数的定义方式:类似于Java定义方法,支持带参数调用。需要注意的是,数据库函数必须有返回值,且可以嵌套使用,例如round(avg())

  • 函数的嵌套使用:函数可以嵌套调用,常见的日期函数如DAY()MONTH()等可以灵活组合使用。使用函数时,需注意参数的顺序和数据类型。

  • 函数的应用场景:函数可以用于数据处理、日期计算、字符串操作等多个方面,极大地提升了数据库查询的复杂度和效率。


  • 二、日期函数

    日期函数是数据库中常用的工具,用于数据的时间处理。以下是常见日期函数及其使用示例:

  • NOW():获取当前日期和时间。

    select now();

    运行示例:该函数返回当前系统时间。

  • DAY()、MONTH()、YEAR():分别提取日期中的天、月、年。

    select day(now()), month(now()), year(now());

    运行示例:提取当前日期的天、月、年。

  • DATE_FORMAT()与STR_TO_DATE():用于日期格式的转换。

    select date_format(now(), '%Y-%m-%d'), str_to_date('2022-06-08', '%Y-%m-%d');

    运行示例:将日期格式从数据库转换为字符串或相反。


  • 三、字符串函数

    字符串函数是处理文本数据的重要工具,常用于数据清洗和格式转换。以下是常用字符串函数及其示例:

  • UPPER()/LOWER():用于大小写转换。

    select upper('my name is kangkang'), lower('I AM KANGKANG');
  • REPLACE():替换字符串中的子字符串。

    select replace(uuid(), '-', '');
  • SUBSTRING():提取字符串的特定子串。

    select substring('zhang san is a person', 1, 5), substring('zhang san is a person', 5);
  • TRIM()与LENGTH():去除前后空格并获取字符串长度。

    select length(' zhang san is a person '), length(trim(' zhang san is a person '));
  • CONCAT():合并多个字符串。

    select concat('aa', 'abcd');

  • 四、数字函数

    数字函数用于数据的算术和统计操作,常用于数据分析和计算。以下是常用数字函数及其示例:

  • FLOOR()与CEIL():向下取整和向上取整。

    select floor(-3.14), ceil(-3.14);
  • ROUND():四舍五入处理。

    select round(avg());

  • 五、条件判断函数

    条件判断函数用于根据特定条件获取数据,常用于数据过滤和分类。以下是常用条件判断函数及其示例:

  • IF条件判断:根据表达式结果选择返回值。

    select if(sc.cid = '01', sc.score, 0) as 语文,       if(sc.cid = '02', sc.score, 0) as 数学,       if(sc.cid = '03', sc.score, 0) as 英语from t_student s left join t_score sc on s.sid = sc.sidgroup by s.sid, s.sname;
  • CASE语句:用于更复杂的条件判断。

    select s.sid, s.sname,        case            when t1.cid = '01' then '语文'           when t2.cid = '02' then '数学'           else '未知课程'       end as 课程名称from (select * from t_score where cid = '01') t1,       (select * from t_score where cid = '02') t2,       t_student swhere t1.sid = t2.sid and t1.sid = s.sid and t1.score > t2.score;

  • 六、合并函数

    合并函数用于将多个数据源的结果合并为一个完整的数据集,常用于数据汇总和统计。以下是常用合并函数及其示例:

  • UNION与UNION ALL:将多个查询结果合并。

    select 1, 'zs', 18 union all select 2, 'ls', 22 union all select 2, 'ls', 22;
  • 小结

    • UNION:去除重复记录。
    • UNION ALL:保留所有记录,适用于同一字段数据的合并。
    • 使用前提:结果集的列数和类型必须一致。

  • 七、聚合函数

    聚合函数用于对多个记录进行统计和汇总,常用于数据分析和报表生成。以下是常用聚合函数及其示例:

  • SUM()、AVG()、MAX()、MIN():分别用于求和、平均值、最大值和最小值。

    select sum(score), avg(score), max(score), min(score)from t_student s;
  • COUNT():统计记录数量。

    select count(*) as 总记录数from t_student s;

  • 通过以上函数的学习与实践,您可以更高效地进行数据库操作,提升数据处理能力。

    转载地址:http://nxbfk.baihongyu.com/

    你可能感兴趣的文章
    mysqldump实现数据备份及灾难恢复
    查看>>
    mysqldump数据库备份无法进行操作只能查询 --single-transaction
    查看>>
    mysqldump的一些用法
    查看>>
    mysqli
    查看>>
    MySQLIntegrityConstraintViolationException异常处理
    查看>>
    mysqlreport分析工具详解
    查看>>
    MySQLSyntaxErrorException: Unknown error 1146和SQLSyntaxErrorException: Unknown error 1146
    查看>>
    Mysql_Postgresql中_geometry数据操作_st_astext_GeomFromEWKT函数_在java中转换geometry的16进制数据---PostgreSQL工作笔记007
    查看>>
    mysql_real_connect 参数注意
    查看>>
    mysql_secure_installation初始化数据库报Access denied
    查看>>
    MySQL_西安11月销售昨日未上架的产品_20161212
    查看>>
    Mysql——深入浅出InnoDB底层原理
    查看>>
    MySQL“被动”性能优化汇总
    查看>>
    MySQL、HBase 和 Elasticsearch:特点与区别详解
    查看>>
    MySQL、Redis高频面试题汇总
    查看>>
    MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
    查看>>
    mysql一个字段为空时使用另一个字段排序
    查看>>
    MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
    查看>>
    MYSQL一直显示正在启动
    查看>>
    MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
    查看>>