怎么使用数据库用学号查询应到人数以及实到人数和缺考人数
时间: 2024-03-15 09:44:14 浏览: 10
如果您想根据学号查询某个学生的考勤情况,可以使用 WHERE 子句和学号条件来过滤结果。以下是一个示例查询,演示如何查询某个学生的应到人数、实到人数和缺考人数:
```
SELECT
COUNT(*) AS total_students,
SUM(CASE WHEN attendance = 1 THEN 1 ELSE 0 END) AS present_students,
SUM(CASE WHEN attendance = 0 THEN 1 ELSE 0 END) AS absent_students
FROM
student_info
WHERE
exam_date = '2022-01-01' AND
student_id = '1001'
```
在上面的查询中,使用了 WHERE 子句来限定查询日期为 '2022-01-01' 和学号为 '1001',您需要根据具体情况修改查询条件。
需要注意的是,如果您想查询多个学生的考勤情况,可以将 WHERE 子句中的学号条件改为 IN() 子句,例如:
```
WHERE
exam_date = '2022-01-01' AND
student_id IN ('1001', '1002', '1003')
```
这将查询学号为 1001、1002 和 1003 的学生的考勤情况。
相关问题
数据库按性别统计男女生人数,显示性别和人数。查询获得奖学金的学生的学号和姓名,系
好的,你可以使用以下 SQL 语句来查询:
1. 按性别统计男女生人数,显示性别和人数:
```
SELECT 性别, COUNT(*) AS 人数
FROM 学生表
GROUP BY 性别;
```
请注意,以上 SQL 语句中的“学生表”和“性别”等字段和表名需要根据你的具体情况进行修改。
2. 查询获得奖学金的学生的学号和姓名,系:
```
SELECT 学号, 姓名, 系
FROM 学生表
WHERE 获奖情况 = '获得奖学金';
```
请注意,以上 SQL 语句中的“学生表”和“学号”、“姓名”、“系”、“获奖情况”等字段和表名需要根据你的具体情况进行修改。
数据库提供三张表按照专业性别统计人数
假设您的数据库中有三张表分别为:
1. 学生表(student):包含学生的学号、姓名、性别、专业等字段。
2. 专业表(major):包含专业的编号、名称等字段。
3. 性别表(gender):包含性别的编号、名称等字段。
要按照专业和性别统计人数,可以使用以下SQL语句:
```
SELECT
major.名称 AS 专业,
gender.名称 AS 性别,
COUNT(student.学号) AS 人数
FROM
student
INNER JOIN major ON student.专业 = major.编号
INNER JOIN gender ON student.性别 = gender.编号
GROUP BY
student.专业,
student.性别
```
以上SQL语句使用了INNER JOIN连接三个表,并在SELECT语句中分别选择了专业、性别和人数,并使用COUNT函数统计人数。在GROUP BY子句中,以专业和性别为分组依据。这样就可以按照专业和性别统计人数了。