首先编写查询、然后使用合适的参数去封装为相应的函数 1.创建一个函数,根据学生姓名和课程名查询该生该课程的成绩。 2.创建一个函数,根据教师姓名查询该教师所教课程名、学生人数、平均成绩、最高成绩、最低成绩。 3.创建一个函数,统计各系各职称的教师的总人数、男女人数、平均年龄。(使用SQL语句完成))
时间: 2024-03-23 14:36:48 浏览: 102
好的,以下是对应的函数代码,同时包含了对应的 SQL 语句:
1. 根据学生姓名和课程名查询该生该课程的成绩
```python
def get_score_by_name_course(name, course):
"""
根据学生姓名和课程名查询该生该课程的成绩
:param name: 学生姓名
:param course: 课程名
:return: 成绩
"""
# 数据库查询操作,获取该生该课程的成绩
sql = "SELECT score FROM score_table WHERE name=%s AND course=%s"
params = (name, course)
cursor.execute(sql, params)
score = cursor.fetchone()
return score
```
2. 根据教师姓名查询该教师所教课程名、学生人数、平均成绩、最高成绩、最低成绩
```python
def get_teacher_info(name):
"""
根据教师姓名查询该教师所教课程名、学生人数、平均成绩、最高成绩、最低成绩
:param name: 教师姓名
:return: 课程名、学生人数、平均成绩、最高成绩、最低成绩
"""
# 数据库查询操作,获取该教师所教的课程名、学生人数、平均成绩、最高成绩、最低成绩
sql = "SELECT course_name, COUNT(DISTINCT student_name), AVG(score), MAX(score), MIN(score) " \
"FROM score_table WHERE teacher_name=%s GROUP BY course_name"
params = (name,)
cursor.execute(sql, params)
result = cursor.fetchall()
return result
```
3. 统计各系各职称的教师的总人数、男女人数、平均年龄
```python
def get_department_info():
"""
统计各系各职称的教师的总人数、男女人数、平均年龄
:return: 各系各职称的教师的总人数、男女人数、平均年龄
"""
# 数据库查询操作,获取各系各职称的教师总人数、男女人数、平均年龄
sql = "SELECT department, title, COUNT(*), SUM(CASE WHEN sex='male' THEN 1 ELSE 0 END), " \
"SUM(CASE WHEN sex='female' THEN 1 ELSE 0 END), AVG(age) FROM teacher_table " \
"GROUP BY department, title"
cursor.execute(sql)
result = cursor.fetchall()
return result
```
以上是对应的函数代码,其中使用了 cursor 对象进行数据库查询操作,具体实现需要根据具体的数据库和数据结构进行调整。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)