MySQL函数

官网:https://dev.mysql.com/doc/refman/8.0/ja/

常用函数

--常用函数
SELECT ABS(-8) --绝对值

SELECT CEILING(8.1) --向上取整

SELECT FLOOR(8.9)  -- 向下取整

SELECT RAND()--返回一个0~1之间的随机数

SELECT SIGN() --判断一个数的符号 0-0 负数返回-1.正数返回1

--字符串函数
SELECT CHAR_LENGTH('RNG牛逼') --字符串长度
SELECT CONCAT('我','爱','你') AS 表白 --拼接字符串
SELECT INSERT ('我爱编程helloworld',1,2,'超级热爱')--查询,从某个位置开始替换某个长度

SELECT LOWER('QWER')--大写转换成小写
SELECT UPPER('qwer')--小写转换成大写

SELECT INSTR('RayolNeverGiveup','N')--返回第一次出现字符串的位置

SELECT REPLACE('你好','你','我') --替换出现的指定字符串

SELECT SUBSTR('我说RNG世界赛加油',3,8)--返回指定的字符串(源字符串,截取字符串的位置,截取的长度)
SELECT REVERSE('清晨我上马') --反转,反过来



--查询姓小的学生,把小替换成晓
SELECT REPLACE(studentname,'小','晓') FROM student
WHERE studentname LIKE '小%'

聚合函数(常用)

函数名称 描述
COUNT() 计算
SUM() 求和
AVG() 平均值
MAX() 最大值
MIN() 最小值
---------聚合函数
--都能后统计表中的数据(想查询一个表中有多少个记录,就使用count())
SELECT COUNT(`sex`) FROM student --指定列 count(字段),会忽略所有的null值
SELECT COUNT(*) FROM student --COUNT(*)  不会忽略null值, 本质 计算行数
SELECT   FROM student -- COUNT(1) 不会忽略null值 本质 计算行数



SELECT SUM(studentresult) AS 成绩总和 FROM result
SELECT AVG(studentresult) AS 平均分 FROM result
SELECT MAX(studentresult) AS 最高分  FROM result
SELECT MIN(studentresult) AS 最低分  FROM result

分组和过滤:

--查询不同课程的平均分,最高分,最低分
--核心(根据不同的课程分组)
SELECT subjectname,AVG(studentresult) AS 	平均分,MAX(studentresult),MIN(studentresult)
FROM result AS r
INNER JOIN `subject` AS sub
ON r.subjectno = sub.subjectno
GROUP BY r.subjectno --通过什么字段来分组
HAVING 平均分>80

上一篇:深入delphi编程理解之消息(一)WINDOWS原生窗口编写及消息处理过程


下一篇:MySQL-基础语句