SQL Server 2000 语句分组查询?

来源:百度知道 编辑:UC知道 时间:2024/05/29 13:25:13
create table 学生
(
学号 int primary key,
姓名 varchar(6) not null,
性别 char(2) not null check(性别 in('男','女')) default '男',
班级 varchar(8) not null,
年龄 int not null check(年龄>0),
电话 varchar(40) not null check(电话='*********')

)

insert into 学生 values(200001, '许元', '男','2003jsj','29','*********')
insert into 学生 values(200002, '王胜', '男','2003ck','25','*********')
insert into 学生 values(200003, '王梅', '女','2003ck', '23','*********')
insert into 学生 values(200004, '刘志', '男','2003jsj','31','*********')
insert into 学生 values(200005, '刘建远','男','2003ck','34','*********')
insert into 学生 values(200006, '李欣', '女','2003ck','26','*********')
insert into 学生

==我来做。 

SELECT 学生.学号,姓名,性别,班级,年龄,电话,课程成绩,课程编号 FROM 学生,成绩 

WHERE 学生.学号=成绩.学号 

GROUP BY 课程成绩,学生.学号,姓名,性别,班级,年龄,电话,课程编号 

HAVING 课程成绩>(SELECT AVG(课程成绩)FROM 成绩)

看了老半天发现楼下和我的几乎没区别。

但执行了一下却发现楼下有几个地方不对。

1.SUM(课程成绩)明显符号不对。应该是SUM(课程成绩).

2.GROUP BY 语句中根本就没有课程成绩。错误提示:

服务器: 消息 8121,级别 16,状态 1,行 1

列 '成绩.课程成绩' 在 HAVING 子句中无效,因为该列既不包含在聚合函数中,也不包含在 GROUP BY 子句中。呵呵。不行你执行看下。

SQL Server 2000 和 SQL Server 2005。。。。。。 SQL Server 2000问题 Microsoft SQL Server 2000 SQL Server 2000 SQL server 2000 SQL Server 2000 安全问题 Sql server 2000 关于SQL server 2000? SQL SERVER 2000 sql server 2000