精通MySQL:掌握关键函数

发表时间: 2024-04-16 09:50

统计函数

  • count() 数据条数
  • sum() 求和
  • max() 最大值
  • min() 最小值
  • avg() 平均值

分组统计

  • group by column: 分组
  • having : 分组结果过滤

字符串函数

  • charest(str) 返回字符串字符集
  • concat(str1,str2,...) 连接字符串
  • instr(str,substr) 返回substr在str中出现的位置,没有返回0
  • left(str, len) 从str左边起去len个字符
  • ucase(str) 转大写
  • lcase(str) 转小写
  • length(str) str长度,按照字节
  • replace(str, from_str, to_str) 在str中,用to_str替换from_str
  • strcmp(expr1,expr2) 逐字符比较两字符串大小
  • substring(str,pos,len) 从str的pos(从1开始)开始,去len个字符
  • ltrim(str) 去除str前端空格
  • rtrim(str) 去除str后端空格
  • trim(str) 去除str两端空格

数学函数

  • abs(expr) 绝对值
  • bin(N) 十进制转二进制
  • ceiling(X) 向上取整,得到比X大的最小整数
  • floor(X) 向下取整,得到比X小的的最大整数
  • conv(N,from_base,to_base) 进制转换
  • hex(N_or_S) 转十六进制
  • format(X,D) 保留小数位数(四舍五入)
  • least(value1, value2, ...) 求最小值
  • mod(N,M) 求余
  • rand() 随机数(0 ≤ rand() ≥ 1), rand(seed),加入种子seed,seed不变,随机数固定,不再变动

日期函数

  • current_date() 当前日期
  • current_time() 当前时间
  • current_timestamp() 当前时间戳
  • date(expr) 返回expr的日期部分
  • date_add(date,INTERVAL expr unit) 在date中加上日期或时间
  • date_sub(date,INTERVAL expr unit) 在date中减去日期或时间
  • datediff(expr1,expr2) 两个日期相差天数
  • timediff(expr1,expr2) 两个时间差(xx小时xx分钟xx秒)
  • now() 当前日期时间
  • year(date)/month(date)/day(date) 年/月/日
  • unix_timestamp() 秒数
  • from_unixtime(unix_timestamp,format) 将 unix_timestamp 秒数转换为指定的日期格式

加密/系统函数

  • user() 查询用户
  • database() 数据库名称
  • MD5(str) 为字符串算出一个MD5 32的字符串
  • password(str) 从原文密码str计算并返回密码字符串,通常用于对mysql数据库的用户密码加密 =》 mysql8 已弃用