数据库的查询操作

在这里插入图片描述
三张表结构

查询学号为S001的学生的课程

SELECT cname from stumarks c, stucourse m WHERE c.cno=m.cno and stuno='S001'


select * from stuinfo ORDER BY stubirth


//倒序排列查出来的成绩 按照stuscore分组后面加条件 
SELECT * from stumarks GROUP BY stuscore having stuscore>86 ORDER BY  stuscore desc
//正序
SELECT * from stumarks GROUP BY stuscore having stuscore>86 ORDER BY  stuscore ASC

以下是方便自己的查看

SELECT *
FROM stuinfo join stumarks on stuinfo.stuno=stumarks.stuno;

SELECT *
FROM stuinfo,stumarks
WHERE stuinfo.stuno=stumarks.stuno

SELECT *
FROM stuinfo LEFT JOIN stumarks on stuinfo.stuno=stumarks.stuno

SELECT stumarks RIGHT  JOIN stuinfo on stuinfo.stuno=stumarks.stuno

SELECT stusex,AVG(stuscore)
from stuinfo,stumarks
WHERE stuinfo.stuno=stumarks.stuno
GROUP BY stusex

SELECT stuinfo.stuno,stuname,cname
FROM stuinfo,stumarks,stucourse
WHERE stuinfo.stuno=stumarks.stuno AND stumarks.cno=stucourse.cno

SELECT i.stuno,stuname,cname,stuscore
FROM stuinfo i JOIN stumarks m on i.stuno=m.stuno
JOIN stucourse c on c.cno=m.cno

SELECT i.stuno,stuname,cname
FROM stuinfo i,stucourse c,stumarks m
WHERE i.stuno=m.stuno and c.cno=m.cno and stuname like '刘%'

SELECT stuno,stuscore
FROM stucourse c,stumarks m
WHERE c.cno=m.cno and cname='英语' AND stuscore BETWEEN 80 and 90 

SELECT AVG(YEAR(SYSDATE())-YEAR(stubirth))
FROM stuinfo i,stumarks m
where i.stuno=m.stuno
AND cno='0004'

SELECT AVG(year(SYSDATE())-year(stubirth))
FROM stuinfo JOIN stumarks ON stuinfo.stuno=stumarks.stuno
WHERE cno='0004'

猜你喜欢

转载自blog.csdn.net/qq_40183281/article/details/88746761