常见MySQL函数

本文详细介绍了SQL中的各种函数,包括字符函数、数学函数、日期函数及其他函数,如MD5加密和流程控制函数。同时,深入解析了分组函数的使用,如max、min、sum、avg和count,并探讨了它们的特点和应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、概述

  • 功能:类似于java中的方法
  • 好处:提高重用性和隐藏实现细节
  • 调用:select 函数名(实参列表);

二、单行函数

1、字符函数

  • concat:连接
  • substring:截取子串
  • upper:变大写
  • lower:变小写
  • replace:替换
  • length:获取字节长度
  • trim:去前后空格
  • lpad:左填充
  • rpad:右填充
  • instr:获取子串第一次出现的索引

2、数学函数

  • ceil:向上取整
  • floor:向下取整
  • round:四舍五入
  • mod:取模
  • truncate:截断
  • rand:获取随机数,返回0-1之间的小数

3、日期函数

  • now:返回当前日期+时间
  • year:返回年
  • month:返回月
  • day:返回日
  • date_format:将日期转换成字符
  • curdate:返回当前日期
  • str_to_date:将字符转换成日期
  • curtime:返回当前时间
  • hour:小时
  • minute:分钟
  • second:秒
  • datediff:返回两个日期相差的天数
  • monthname:以英文形式返回月

4、其他函数

  • version:返回当前数据库服务器的版本
  • database:当前打开的数据库
  • user:当前用户
  • password(‘字符’):返回该字符的密码形式
  • md5(‘字符’):返回该字符的md5加密形式

5、流程控制函数

  • ①if(条件表达式,表达式1,表达式2):如果条件表达式成立,返回表达式1,否则返回表达式2

  • ②case情况1(单纯case语句)

  • case 变量或表达式或字段

  • when 常量1 then 值1

  • when 常量2 then 值2

    else 值n
    end;

  • ③case情况2(多重if语句)
    case
    when 条件1 then 值1
    when 条件2 then 值2

    else 值n
    end;

三、分组函数

1、分类

  • max 最大值
  • min 最小值
  • sum 和
  • avg 平均值
  • count 计算个数

2、特点

  • ①语法

    • select max(字段) from 表名;
  • ②支持的类型

    • sum 和 avg 一般用于处理数值型
    • max、min、count可以处理任何数据
  • ③以上分组函数都忽略null值

  • ④都可以搭配distinct使用,实现去重的统计

    • select max(distinct 字段) from 表;
  • ⑤count函数

    • count(字段):统计该字段的非空值的个数
    • count(*): 统计结果集的行数
    • 案例: 查询每个部门的员工个数
      1 xx 10
      2 dd 20
      3 mm 20
      4 aa 40
      5 hh 40
  • count(1):统计结果集的行数

  • 效率上:
    MyISAM存储引擎,count()最高
    InnoDB存储引擎,count(1)和count(
    )效率 > count(字段)

  • ⑥和分组函数一同查询的字段,要求是group by后出现的字段

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值