select St_ID from SCInfo where Score=max(Score)为什么报错
时间: 2023-05-29 20:06:21 浏览: 50
这个 SQL 查询语句报错可能是因为在 select 子句中使用了聚合函数 max(),但是没有使用 group by 子句对查询结果进行分组。正确的 SQL 查询语句应该是:
```
SELECT St_ID FROM SCInfo WHERE Score = (SELECT MAX(Score) FROM SCInfo);
```
这个查询语句会返回 SCInfo 表中分数最高的学生的 St_ID。
相关问题
2、创建一个简单的存储过程(SCInfo),要求结果输出选课信息,包括学号、姓名、课程号、课程名和成绩。
好的,这是一个简单的存储过程(SCInfo)的示例,用于输出选课信息,包括学号、姓名、课程号、课程名和成绩:
```
CREATE PROCEDURE SCInfo
AS
BEGIN
SELECT s.StudentID, s.StudentName, c.CourseID, c.CourseName, sc.Score
FROM Students s
JOIN SC sc ON s.StudentID = sc.StudentID
JOIN Courses c ON c.CourseID = sc.CourseID
END
```
在上面的存储过程中,我们使用了 Students、SC 和 Courses 三个表,通过 JOIN 语句将它们连接起来,最终得到了选课信息的结果集。你可以根据自己的实际情况进行修改和调整。