第五章 Mysql函数
5.1 常用函数
-- 数学运算
abs
ceiling 向上取整
floor 向下取整
rand()
sign() 返回符号
-- 字符串函数
CHAR_LENGTH 字符串长度
CONCAT 拼接字符串
SELECT INSERT('12345',1,2,'cc')
-- cc345
LOWER
UPPER
SELECT NOW()
SELECT LOCALTIME
5.2 聚合函数(常用)
函数名 | 功能 |
---|---|
COUNT() | 想查询一个表中有多少记录 |
AVG() | 均值 |
SUM() | 总和 |
MAX() | 最大值 |
MIN() | 最小值 |
-- 想查询一个表中有多少记录
SELECT COUNT(`studentname`) FROM student -- 会忽略所有的null值 最快 指定字段
-- 不会忽略null值
SELECT COUNT(*) FROM student -- 计算行数
SELECT COUNT(1) FROM student -- 有主键情况下 本质也是计算行数
SELECT SUM(`studentresult`) FROM result
SELECT AVG(`studentresult`) FROM result
SELECT `subjectname`,AVG(`studentresult`),MAX(`studentresult`),MIN(`studentresult`)
FROM result r
INNER JOIN `subject` sub
ON r.`subjectno` = sub.`subjectno`
GROUP BY r.`subjectno`
补充1. 分组和过滤
SELECT `subjectname`,AVG(`studentresult`) AS 平均分,MAX(`studentresult`),MIN(`studentresult`)
FROM result r
INNER JOIN `subject` sub
ON r.`subjectno` = sub.`subjectno`
GROUP BY r.`subjectno`
HAVING 平均分 > 70
补充2. MD5加密
MD5不可逆
主要增强算法复杂度和不可逆性