
步骤:
1.建立数据库mydb11_stu

2.创建表格

3.插入表格数据
student表:

score表:

4.查询
(1)分别查询student表和score表的所有记录
student表:

score表:

2)查询student表的第2条道第5条记录
要查询第2条到第5条记录,偏移量为1(第2条记录的索引为1),数量为4(要查询4条记录:2,3,4,5)
偏移量表示从第几条记录开始查询(从0开始计数)
数量表示查询几条记录

(3)从student表中查询计算机系和英语系的学生的信息
where:指定筛选条件(条件department(系别)为‘计算机系’和‘英语系’,用or表示两个条件)

(4)从student表中查询年龄小于22岁的学生信息
where后面添加条件:年龄小于22岁(今年年份 — 出生年份 < 22)

(5)从student表中查询每个院系有多少人
group by:按照 department 对记录进行分组
count(*):计算每个组中的记录数量

6)从score表中查询每个科目的最高分
max(grade):找出每个组中的最高分数

(7)查询李广昌的考试科目(c_name)和考试成绩(grade)
首先在student表中找到李广昌的id(学号),然后where通过stu_id(学号)筛选出李广昌的考试记录,最后查询出对应的c_name(考试科目)和grade(成绩)

(8)用连接的方式查询所有学生的信息和考试信息
inner join :用于连接两个表
on指定连接条件:(student表中的id(学号)和score表中的stu_id(学生学号)相等

9)计算每个学生的总成绩
sum(grade):计算每个学生的总成绩

10)计算每个考试科目的平均成绩
avg(grade):计算每个考试科目的平均成绩

11)查询计算机成绩低于95的学生的信息
先在score表中找出计算机成绩低于95的学生学号,再从student表中查询这些学生的信息
内层查询(select stu_id from score where c_name = '计算机' and grade < 95)找成绩
外层查询 select * from student where id (...)找信息

(12)将计算机考试成绩按从高到低进行排序
order by :用于对查询结果进行排序
desc 为降序排列,即从高到低排列

(13)从student表和score表中查询出学生的学号,然后合并查询结果
union:用于合并两个查询结果集

(14)查询姓张或者姓王的同学的姓名、年龄、院系和考试科目及成绩
先在student表中找到姓张或者姓王的同学的学号,然后在student表和score表中查询相关信息
like(像) ' 张%'、‘王%’:表示姓张和姓王的同学 inner join :连接两个表

15)查询都是湖南的学生的姓名、年龄、院系和考试科目及成绩
先在student表中找到地址为湖南的同学的学号,然后在student表和score表中查询相关信息
like(像) 计算年龄:2023 — student.birth inner join :连接两个表
'%湖南%':筛选地址为湖南的学生

4041

被折叠的 条评论
为什么被折叠?



