首先编写查询、然后使用合适的参数去封装为相应的函数 1.创建一个函数,根据学生姓名和课程名查询该生该课程的成绩。 2.创建一个函数,根据教师姓名查询该教师所教课程名、学生人数、平均成绩、最高成绩、最低成绩。 3.创建一个函数,统计各系各职称的教师的总人数、男女人数、平均年龄。
时间: 2024-03-23 19:36:46 浏览: 29
好的,以下是对应的函数代码:
1. 根据学生姓名和课程名查询该生该课程的成绩
```python
def get_score_by_name_course(name, course):
"""
根据学生姓名和课程名查询该生该课程的成绩
:param name: 学生姓名
:param course: 课程名
:return: 成绩
"""
# 数据库查询操作,获取该生该课程的成绩
score = db.query("SELECT score FROM score_table WHERE name=%s AND course=%s", (name, course))
return score
```
2. 根据教师姓名查询该教师所教课程名、学生人数、平均成绩、最高成绩、最低成绩
```python
def get_teacher_info(name):
"""
根据教师姓名查询该教师所教课程名、学生人数、平均成绩、最高成绩、最低成绩
:param name: 教师姓名
:return: 课程名、学生人数、平均成绩、最高成绩、最低成绩
"""
# 数据库查询操作,获取该教师所教的课程名、学生人数、平均成绩、最高成绩、最低成绩
course_name = db.query("SELECT course_name FROM course_table WHERE teacher_name=%s", (name,))
student_num = db.query("SELECT COUNT(*) FROM student_table WHERE course_name=%s", (course_name,))
avg_score = db.query("SELECT AVG(score) FROM score_table WHERE course=%s AND teacher=%s", (course_name, name))
max_score = db.query("SELECT MAX(score) FROM score_table WHERE course=%s AND teacher=%s", (course_name, name))
min_score = db.query("SELECT MIN(score) FROM score_table WHERE course=%s AND teacher=%s", (course_name, name))
return course_name, student_num, avg_score, max_score, min_score
```
3. 统计各系各职称的教师的总人数、男女人数、平均年龄
```python
def get_department_info():
"""
统计各系各职称的教师的总人数、男女人数、平均年龄
:return: 各系各职称的教师的总人数、男女人数、平均年龄
"""
# 数据库查询操作,获取各系各职称的教师总人数、男女人数、平均年龄
total_count = db.query("SELECT COUNT(*) FROM teacher_table GROUP BY department")
male_count = db.query("SELECT COUNT(*) FROM teacher_table WHERE sex='male' GROUP BY department")
female_count = db.query("SELECT COUNT(*) FROM teacher_table WHERE sex='female' GROUP BY department")
avg_age = db.query("SELECT AVG(age) FROM teacher_table GROUP BY department, title")
return total_count, male_count, female_count, avg_age
```
以上是对应的函数代码,其中使用了数据库查询操作,具体实现需要根据具体的数据库和数据结构进行调整。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)