博客
关于我
MySQL之函数
阅读量:790 次
发布时间: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/

    你可能感兴趣的文章
    Mysql主从不同步
    查看>>
    mysql主从同步及清除信息
    查看>>
    MySQL主从同步相关-主从多久的延迟?
    查看>>
    mysql主从同步配置方法和原理
    查看>>
    mysql主从复制 master和slave配置的参数大全
    查看>>
    MySQL主从复制几个重要的启动选项
    查看>>
    MySQL主从复制及排错
    查看>>
    mysql主从复制及故障修复
    查看>>
    MySQL主从复制的原理和实践操作
    查看>>
    webpack loader配置全流程详解
    查看>>
    mysql主从复制,读写分离,半同步复制实现
    查看>>
    MySQL主从失败 错误Got fatal error 1236解决方法
    查看>>
    MySQL主从架构与读写分离实战
    查看>>
    MySQL主从篇:死磕主从复制中数据同步原理与优化
    查看>>
    mysql主从配置
    查看>>
    MySQL之2003-Can‘t connect to MySQL server on ‘localhost‘(10038)的解决办法
    查看>>
    MySQL之CRUD
    查看>>
    MySQL之DML
    查看>>
    Mysql之IN 和 Exists 用法
    查看>>
    MYSQL之REPLACE INTO和INSERT … ON DUPLICATE KEY UPDATE用法
    查看>>