一,分组查询
1.使用GROUP BY 进行分组查询
SELECT 列名 ,AVG(列名)AS 课程平均成绩
FROM 表名
GROUP BY 列名
2.多列分组查询
SELECT COUNT(*)AS 人数,列名 AS 年级,列名 AS 性别
FROM 表名
GROUP BY 列名
ORDER BY 列名
二,使用HAVING子句进行分组筛选
SELECT COUNT(*)AS 人数,列名 AS 年级
FROM 表名
GROUP BY 列名
HAVING COUNT(*)>条件
三,多表链接查询
多表链接查询的分类
1.内连接查询:是最典型,最常用的链接查询,它根据表中共同的列来进行匹配。特别是两个表存在主外键关系时通常会使用内链接查询
2.外连接查询:至少返回一个表中的所有记录,根据匹配条件有选择性地返回另一张表的记录外连接可以是:左外连接,右外连接
在 WHERE 子句中指定连接条件
SELECT Studentes.Sname,Score.CourseID,Score.Score
FROM Seudents.Score
WHERE Students.SCode=Score.StudentID
在FROM 子句中使用INNER JOIN ON
SELECT S.Sname,C.CouresID,C.Score
FROM Students AS S
INNER JOIN Score AS C ON (S.Scode=C.StudentID)
INNER JOIN :用来连接两个表
ON:用来设置条件
AS:指定表的别名
外连接查询
左外连接查询 :
SELECT S.Sname,C.CourseID,C.Score
FROM Students AS S
LEFT OUTER JOIN Score AS C ON S.Sode=C.StudentID
右外连接查询 :
SELECT Titlse.Title_id,Titles.Title,Publisher.Pub_name
FROM Titles
RIGHT OUTER JOIN Publisher ON Titlse.Pud_id=Publishers.Pub_id
完!