• MySQL常用函数


    常用函数

    数学运算

    1. -- 绝对值
    2. SELECT ABS(-8)
    3. -- 向上取整
    4. SELECT CEILING(9.8)
    5. -- 向下取整
    6. SELECT FLOOR(9.8)
    7. -- 随机数字(0-1)
    8. SELECT RAND()
    9. -- 判断一个数的符号 (正数1,负数-1)
    10. SELECT SIGN(10)
    11. SELECT SIGN(-10)

    字符串函数

    1. -- 字符串长度
    2. SELECT CHAR_LENGTH('飞流直下三千尺,疑是银河落九天')
    3. -- 拼接字符串
    4. SELECT CONCAT('我','爱','中国')
    5. -- 查询,从某个位置开始替换某个长度(第一个数字是第几个位置前,第二个数字是替换几个字符)
    6. SELECT INSERT('我爱编程',2,1,'超级热爱')
    7. -- 小写字母
    8. SELECT LOWER('XiaoXie')
    9. -- 大写字母
    10. SELECT UPPER('DaXie')
    11. -- 返回第一次出现的子串的索引
    12. SELECT INSTR('XIAOMING,XIAOHONG','A')
    13. -- 替换出现的指定字符串
    14. SELECT REPLACE('坚持就能成功','坚持','努力')
    15. -- 返回指定的子字符串(源字符串,截取的位置,截取的长度)
    16. SELECT SUBSTR('坚持就能成功', 5, 2);
    17. -- 反转
    18. SELECT REVERSE('好真气天天今');

    时间日期函数

    1. SELECT CURRENT_DATE(); -- 获取当前日期
    2. SELECT CURDATE(); -- 获取当前日期
    3. SELECT NOW(); -- 获取当前的时间
    4. SELECT LOCALTIME(); -- 获取本地时间
    5. SELECT SYSDATE(); -- 获取系统时间
    6. SELECT YEAR(NOW()); -- 年
    7. SELECT MONTH(NOW()); -- 月
    8. SELECT DAY(NOW()); -- 日
    9. SELECT HOUR(NOW()); -- 时
    10. SELECT MINUTE(NOW()); -- 分
    11. SELECT SECOND(NOW()); -- 秒

    系统

    1. SELECT SYSTEM_USER(); -- 用户名
    2. SELECT USER(); -- 用户名
    3. SELECT VERSION(); -- MySQL版本

    聚合函数及分组过滤

    函数名称描述
    count()计数
    SUM()求和
    AVG()平均值
    MAX()最大值
    MIN()最小值
    ......................

    例:

    1. -- 聚合函数
    2. -- 都能统计 表中数据
    3. -- count(字段) 会忽略所有的null值(想查询一个表中有多少个记录,就使用这个count())
    4. SELECT COUNT(student_name) FROM student;
    5. -- COUNT(*) 不会忽略所有的null值 本质计算行数
    6. SELECT COUNT(*) FROM student;
    7. -- COUNT(1) 不会忽略所有的null值 本质计算行数
    8. SELECT COUNT(1) FROM student;
    9. SELECT SUM(student_result) AS '总和' FROM result;
    10. SELECT AVG(student_result) AS '平均分' FROM result;
    11. SELECT MAX(student_result) AS '最高分' FROM result;
    12. SELECT MIN(student_result) AS '最低分' FROM result;
    13. -- 查询不同课程的平均分,最高分,最低分
    14. SELECT sub.subject_name AS '课程',
    15. AVG(res.student_result) AS '平均分',
    16. MAX(res.student_result) AS '最高分',
    17. MIN(res.student_result) AS '最低分'
    18. FROM result res
    19. INNER JOIN `subject` sub
    20. ON res.`subject_no`=sub.`subject_no`
    21. GROUP BY res.`subject_no`
    22. HAVING AVG(res.student_result) >80;
  • 相关阅读:
    【Leetcode每日一题:1662.检查俩个字符串数组是否相等~~~遍历+模拟+StringBuilder】
    Spring循环依赖
    windows下玩anaconda和librosa遇到的一些坑
    20 _ 散列表(下):为什么散列表和链表经常会一起使用?
    【元宇宙】数字孪生,为智能社会赋能
    数据湖技术之 Hudi 集成 Flink
    Qt的对象树
    C现代方法(第10章)笔记——程序结构
    【UE5】通过C++代码创建蓝图对象
    无版权素材集合
  • 原文地址:https://blog.csdn.net/weixin_48426115/article/details/126231200