欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

00 04数据库及SQL/MySQL基础之单表查询练习

程序员文章站 2022-05-28 11:09:41
...

1、查询出选修课程号为30030320的所有学生信息。

SELECT DISTINCT * FROM test_total WHERE course_code='30030320';

2、查询数理学院所有学生的学号、姓名、专业及班级。

SELECT DISTINCT student_id,student_name,student_major,student_class
FROM test_total
WHERE student_faculty='数理学院'

3、查询选择选修课任意一门学分介于1.0和2.0之间的人文学院的2017级学生的学号、姓名。

SELECT DISTINCT student_id,student_name
FROM test_total
WHERE (student_faculty='人文学院') AND (course_credit BETWEEN 1.0 AND 2.0) AND (student_grade=2017)

4、查询信息科学与工程学院2017级的男生和数理学院2018级的男生的学号、姓名。

SELECT DISTINCT student_id,student_name
FROM test_total
WHERE (student_faculty='信息科学与工程学院' AND student_sex='男' AND student_grade=2017) OR (student_faculty='数理学院' AND student_sex='男' AND student_grade=2018)

5、查询信息科学与工程学院2017级的男生和数理学院2018级的男生,还有既不是2017级也不是2018级但选修的任意一门课程的学分大于2.0的所有学生的学号、姓名。

SELECT DISTINCT student_id,student_name
FROM test_total
WHERE (student_faculty='信息科学与工程学院' AND student_sex='男' AND student_grade=2017) OR 
(student_faculty='数理学院' AND student_sex='男' AND student_grade=2018) OR 
(student_grade NOT IN (2017,2018) AND course_credit > 2.0) 

6、查询姓名由三个字组成的学生的学号,姓名。

SELECT DISTINCT student_id,student_name
FROM test_total
WHERE student_name LIKE '___' 

7、查询2018年选课的学生的学号,姓名。

SELECT DISTINCT student_id,student_name
FROM test_total
WHERE YEAR(selection_time)=2018

8、查询数理学院2018级所有学生的学号、姓名、班级,用学号升序排列。

SELECT DISTINCT student_id,student_name,student_class
FROM test_total
WHERE student_faculty='数理学院' AND student_grade=2018 
ORDER BY student_id ASC

9、查询人文学院所有学生的学号、姓名、性别、年级,用年级降序排列,如果年级相同使用学号升序排序。

SELECT DISTINCT student_id,student_name,student_sex,student_grade
FROM test_total
WHERE student_faculty='人文学院'
ORDER BY student_grade DESC, student_id ASC

10、查询每个学院选课的平均学分。

SELECT student_faculty, SUM(course_credit)/COUNT(DISTINCT student_id)
FROM test_total
GROUP BY student_faculty

11、查询每个学院的学生数量。

SELECT DISTINCT student_faculty, COUNT(DISTINCT student_id)
FROM test_total
GROUP BY student_faculty

12、查询每个学院的选修课总学分中最高选修课学分、最低选修课学分。

SELECT student_faculty, MAX(A.total_credit), MIN(A.total_credit)
FROM (SELECT student_faculty,student_id,SUM(course_credit) total_credit
FROM test_total
GROUP BY student_id) A
GROUP BY student_faculty
相关标签: 数据库开发