Mysql聚合函数

Mysql聚合函数

COUNT函数
sno cno grade
201522 1 56
201523 2
201524 3 89
SELECT COUNT(*) AS 用户 FROM all_user;
SELECT COUNT(*) AS 老师 FROM all_user WHERE user_type = 2;

//统计某属性列元素的个数时如果是null,count 不会计入在内;
SELECT COUNT(grade) AS 不及格 FROM sc; //2
SELECT COUNT(grade) AS 不及格 FROM sc WHERE grade<60; //1

数据库退出
quit;
MAX和MIN函数
SELECT MAX(grade)AS 最高分,MIN(grade)AS 最低分 FROM sc;
最高分 最低分
98 56

SUM函数 和AVG函数(查询遇到属性列元素重复的可以用where语句)
SELECT SUM(ccredit)AS 总学分 FROM course;
总学分
4
SELECT AVG(grade)AS 平均成绩 FROM sc;
平均成绩
76.8000

WHERE列运算符
运算符分类 运算符 说明
比较运算符 >、>=、=、<=、<、<>(不等于)、!=、!>、!< 大小比较(!>、!<表示不大于和不小于)
范围运算符 BETWEEN…AND、 NOT BETWEEN…AND 判断列值是否在指定的范围内
列运算符 IN、NOT IN 判断列值是否是列表中的指定值
模糊匹配符 LIKE、NOT LIKE 判断列值是否与指定的字符通配格式相符
空值判断符 IS NULL(<=> NULL) 判断列值是否为空
逻辑运算符 AND 、OR、NOT 用于多个条件的逻辑连接
比较运算符
SELECT ccredit FROM course WHERE cname = 'wuli';

SELECT * FROM course WHERE cname <> 'wuli';

// <=> 查询某个属性列的元素是否为null,是则为true
SELECT * FROM course WHERE cpno <=> NULL;

//复合查询
SELECT * FROM student WHERE(sdept = 'IS' OR sdept = 'CS') AND ssex = 1;
模糊匹配

% 不限长度(%后面的数长度未知)

_ 一个字符长度

//查询尾号为23的学生
SELECT * FROM student WHERE Sno LIKE '%23';
//查询2012年所有的学生
SELECT * FROM student WHERE Sno LIKE '2012%';
//查询学号倒数第二数为2的学生
SELECT * FROM student WHERE Sno LIKE '%2_';

查询范围
SELECT * FROM student WHERE Sno BETWEEN 20121522 AND 20121524;

你可能感兴趣的:(Mysql聚合函数)