数据库-表2

数据库-表

-- 1.查询时和并列
-- 查询每个同学的总分
SELECT sid,sname,jsp+html+css FROM score;
-- 2.聚合查询
-- 查询所有同学的jsp总成绩
SELECT SUM(jsp) FROM score;


-- 查询所有同学所有科目总成绩
SELECT SUM(jsp+html+css) FROM score;


-- 查询html平均分
SELECT AVG(html) FROM score;


-- 查询所有同学所有科目的总成绩平均分
SELECT AVG(html+css+jsp) FROM score;


-- 查询成绩表中css的最高分和最低分
SELECT MAX(css),MIN(css) FROM score;


-- 查询该班总人数
SELECT COUNT(*) FROM score;


-- 查询jsp成绩及格人数
SELECT COUNT(*) FROM score WHERE jsp>=60;

count * :把所有字段全部统计一遍,取最大值

-- 3.分页格式  

limit  起始行,查询几条

公式:limit(当前页-1)*每页显示条数,每页显示条数

分页查询  写在最后面


-- 第一页 当前页,每页显示的条数
SELECT * FROM score LIMIT 0,2;
-- 第二页
SELECT * FROM score LIMIT 2,2;

  4.查询排序 

order by 字段 asc/desc;    系统默认正序排列

SELECT * FROM score ORDER BY html ASC(主排序条件,优先级),css ASC;     多个排列条件用逗号分隔


-- 按照jsp成绩倒序排列
SELECT * FROM score ORDER BY jsp;


-- 求css成绩前两名信息
SELECT * FROM score ORDER BY css DESC LIMIT 0,2;


-- 查询成绩表按照html正序排列,css正序排列
SELECT * FROM score ORDER BY html ASC,css ASC;

  5.分组查询
-- 查询学生表中男女人数
-- 按照性别分组  按谁分组就查谁(一定搭配聚合函数使用)
SELECT ssex,COUNT(*) FROM student GROUP BY ssex;


-- 查询学生表中每个性别的总成绩
SELECT ssex,SUM(score) FROM student GROUP BY ssex;


-- 查询成绩表中每个班的html总成绩
SELECT sclass,SUM(html) FROM score GROUP BY sclass;


-- 查询成绩表中每个班的所有科目总成绩
SELECT sclass,SUM(html+css+jsp) FROM score GROUP BY sclass;

  6.分组后查询
-- 查询人数大于2的性别
SELECT ssex FROM student GROUP BY ssex
HAVING COUNT(*)>2;


-- 查询jsp总成绩大于100的班级
SELECT sclass FROM score GROUP BY sclass
HAVING SUM(jsp)>100;

原文地址:https://www.cnblogs.com/xinzong/p/14241531.html