1)有两个表是由下面的脚本创建的;您的任务是编写 SQL 查询,该查询显示平均得分最高的学生列表。请提供两个具有以下限制的解决方案 a) 既不能使用子查询、游标也不能使用附加表 b) 既不能使用子查询、游标、附加表也不能使用 GROUP BY 子句
create table Students
(ID int identity(1,1) primary key not null,
StudentName varchar(200) not null,
);
create table StudentMarks
(ID int identity (1,1) primary key not null,
Student_ID int not null references Students (ID),
Mark int not null check (mark between 1 and 5));
insert into Students
(StudentName)
values
('Ivanov'),
('Petrov'),
('Sydorov'),
('Semenov');
insert into StudentMarks
(Student_ID,Mark)
values
(1,3), (1,4), (1,3), (1,5),
(2,3), (2,4), (2,3), (2,5),
(3,3), (3,3), (3,5), (3,3)
这是我到目前为止所尝试的:
select Student_ID
from StudentMarks
where MAX(AVG(Mark))=AVG(Mark)
GROUP BY Student_ID