现有一张数据表stu_grade,其记录着所有学生的数学和计算机的成绩,表中字段有学号、姓名、科目、分数。按以下要求写出对应SQL语句。 (1)查询姓名为李明的学生成绩。 (2)查询计算机成绩大于或等于85分的同学。 (3)查询总分大于180分的所有同学的学号。
时间: 2024-11-05 19:26:49 浏览: 47
春数据库实验表的创建管理和数据操纵样本.doc
好的,以下是满足你需求的SQL语句:
(1)查询姓名为李明的学生成绩:
```sql
SELECT * FROM stu_grade WHERE 姓名 = '李明';
```
(2)查询计算机成绩大于或等于85分的同学:
```sql
SELECT * FROM stu_grade WHERE 科目 = '计算机' AND 分数 >= 85;
```
(3)查询总分(假设数学和计算机分数相加为总分)大于180分的所有同学的学号:
由于没有直接给出如何计算总分,这里我们先假设有一个名为total_score的字段,它包含了数学和计算机的分数之和。如果没有这个字段,你需要根据实际表结构来调整。如果有,那么可以这样查询:
```sql
SELECT 学号 FROM stu_grade
WHERE (数学分数 + 计算机分数) > 180;
```
如果`total_score`字段不存在,你需要先计算总分,然后再做筛选:
```sql
SELECT 学号 FROM (
SELECT 学号, SUM(分数) AS total_score
FROM stu_grade
GROUP BY 学号
) AS subquery
WHERE total_score > 180;
```
请注意,上述SQL语句中的字段名(如`姓名`、`科目`等)需要替换为你实际表中的字段名称。
阅读全文