MySQL学习:常用函数总结

jupiter
2022-01-13 / 0 评论 / 607 阅读 / 正在检测是否收录...
温馨提示:
本文最后更新于2022年01月13日,已超过805天没有更新,若内容或图片失效,请留言反馈。

1.数学函数

  • 针对数字
-- ABS(x) 返回x的绝对值
SELECT ABS(-1); -- 返回1

-- ROUND(x)返回离 x 最近的整数
SELECT ROUND(1.23456); -- 返回1

-- CEIL(x)/CEILING(x) 返回大于或等于 x 的最小整数
SELECT CEIL(1.5); -- 返回2
SELECT CEILING(1.5);  -- 返回2

-- FLOOR(x) 返回小于或等于 x 的最大整数
SELECT FLOOR(1.5);  -- 返回1

-- POW(x,y)/POWER(x,y)返回 x 的 y 次方
SELECT POW(2,3); -- 返回8
SELECT POWER(2,3); -- 返回8

-- RAND()返回 0 到 1 的随机数
SELECT RAND();

-- SIGN(x)返回 x 的符号,x 是负数、0、正数分别返回 -1、0 和 1
SELECT SIGN(-10); -- 返回-1

-- SQRT(x)返回x的平方根
SELECT SQRT(25); -- 返回5

-- TRUNCATE(x,y)返回数值 x 保留到小数点后 y 位的值,不会进行四舍五入
SELECT TRUNCATE(1.23456,3); -- 返回1.234
  • 针对字段
-- AVG(expression) 返回一个表达式的平均值,expression 是一个字段
SELECT AVG(age) FROM student;

-- MAX(expression)返回字段 expression 中的最大值
SELECT MAX(age) AS maxAge FROM Student;

-- MIN(expression)返回字段 expression 中的最大值
SELECT MIN(age) AS minAge FROM Student;

-- SUM(expression)返回指定字段的总和
SUM(expression)返回指定字段的总和

2.字符串函数

-- LENGTH/CHAR_LENGTH(s)/CHARACTER_LENGTH(s)返回字符串 s 的字符数
SELECT LENGTH('1234');  -- 返回4

-- CONCAT(s1,s2…sn)字符串 s1,s2 等多个字符串合并为一个字符串
SELECT CONCAT('hel','llo'); -- 返回hello

-- LOCATE(s1,s)从字符串 s 中获取 s1 的开始位置
SELECT LOCATE('st','myteststring'); -- 返回5    

-- LCASE(s)/LOWER(s)将字符串 s 的所有字母变成小写字母
SELECT LOWER('RUNOOB'); -- 返回runoob

-- UCASE(s)/UPPER(s)将字符串 s 的所有字母变成大写字母
SELECT UCASE('runoob'); -- 返回RUNOOB

-- TRIM(s)去掉字符串 s 开始和结尾处的空格
SELECT TRIM('    RUNOOB    ');-- 返回RUNOOB

-- SUBSTR/SUBSTRING(s, start, length)从字符串 s 的 start 位置截取长度为 length 的子字符串
SELECT SUBSTR/SUBSTRING("RUNOOB", 2, 3);-- 从字符串 RUNOOB 中的第 2 个位置截取 3个 字符,返回UNO

-- REVERSE(s)将字符串s的顺序反过来
SELECT REVERSE('abc');-- 返回cba

-- REPLACE()替换出现的指定字符串
SELECT REPLACE('狂神说坚持就能成功','坚持','努力'); -- 替换出现的指定字符串
SELECT REPIACE(studentname,'周','邹') FROM student WHERE studentname LIKE '%周';

3.时间日期函数

-- CURDATE()/CURRENT_DATE()返回当前日期
SELECT CURDATE();-- 返回2019-02-19
SELECT CURRENT_DATE(); -- 返回2019-02-19

-- CURRENT_TIME()/CURTIME()返回当前时间
SELECT CURRENT_TIME(); -- 返回11:40:45

-- NOW()返回当前日期和时间
SELECT NOW();-- 返回2019-02-19 11:41:32
SELECT LOCALTIME(); -- 本地时间
SELECT SYSDATE(); -- 系统时间

-- 提取年月日时分秒
SELECT YEAR(NOW());
SELECT MONTH(NOW());
SELECT DAY(NOW());
SELECT HOUR(NOW());
SELECT MINUTE(NOW());
SELECT SECOND(NOW());

4.系统函数

-- CURRENT_USER()/SESSION_USER()/SYSTEM_USER()/USER()返回当前用户
SELECT USER();

-- DATABASE()返回当前数据库名
SELECT DATABASE();

-- VERSION()返回数据库的版本号
SELECT VERSION();

参考资料

  1. MySQL 5.7 参考手册
  2. 12.6 数值函数和运算符
  3. 12.8 字符串函数和运算符
  4. 12.7 日期和时间函数
  5. MySQL常用函数大全(总结篇)
0

评论 (0)

打卡
取消