| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1482 人关注过本帖
标题:[求助]新人求助查询语句
只看楼主 加入收藏
duck3503
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-26
收藏
 问题点数:0 回复次数:27 
[求助]新人求助查询语句

表结构如下:

Students(SNO,SNAME,SEX,BDATE,HEIGHT,DEPARTMENT)

Courses(CNO,CNAME,LHOUR,CREDIT,SEMESTER)

SC(SNO,CNO,GRADE)


列出平均成绩最高的学生名字和成绩。(SELECT句中不得使用TOP n子句)


请大家帮忙哦~~~
搜索更多相关主题的帖子: 语句 新人 查询 
2006-03-26 10:16
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
收藏
得分:0 
成绩是哪个字段?credit好像是学分吧,跟成绩不是一回事

2006-03-26 10:25
duck3503
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-26
收藏
得分:0 
成绩是SC表里的GRADE

2006-03-26 10:27
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
收藏
得分:0 
Grade?等级?
ABC等?
还是分数?

2006-03-26 10:28
duck3503
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-26
收藏
得分:0 
分数

2006-03-26 10:28
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
收藏
得分:0 
以下是引用duck3503在2006-3-26 10:16:00的发言:

表结构如下:

Students(SNO,SNAME,SEX,BDATE,HEIGHT,DEPARTMENT)

Courses(CNO,CNAME,LHOUR,CREDIT,SEMESTER)

SC(SNO,CNO,GRADE)


列出平均成绩最高的学生名字和成绩。(SELECT句中不得使用TOP n子句)


请大家帮忙哦~~~

SELECT STUDENTS.*,AvgG
FROM STUDENTS
INNER JOIN
/*以下部分为一级子查询*/
(
SELECT SNO,AvgG
FROM
(
SELECT SNO,avg(GRADE) as AvgG
FROM
SC
Group by SNO
) Avg1 --该部分与下面Avg2均为子查询,同表比较
WHERE 1> --就是下面的二级子查询的结果为0,也就是最高平均分的情况,这个算是Top语句的替换(1可以随便改,改成几就算是Top几,),不过比Top好的地方是,并列的时候这样写可以全部选出
(
SELECT COUNT(*)
FROM
(
SELECT SNO,avg(GRADE) as AvgG
FROM
SC
Group by SNO
) Avg2

WHERE Avg1.AvgG<Avg2.AvgG
)
) MAVG
/*一级子查询尾*/


ON
STUDENTS.SNO=MAVG.SNO

[此贴子已经被作者于2006-3-26 11:54:01编辑过]


2006-03-26 11:07
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
收藏
得分:0 
写完才发现Courses没有用

2006-03-26 11:09
duck3503
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-26
收藏
得分:0 

哇,老大果然强人,谢谢
可以解释下那语句分别是干什么的吗?


2006-03-26 11:35
duck3503
Rank: 1
等 级:新手上路
帖 子:49
专家分:0
注 册:2006-3-26
收藏
得分:0 

如果成绩里有部分成绩是NULL的话,怎样才能不让他参加比较呢?


2006-03-26 11:37
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
收藏
得分:0 

Null不记入avg运算结果

假如某人选了3门,2门有成绩,一门是Null的话,平均值是有成绩的2门的平均


2006-03-26 11:44
快速回复:[求助]新人求助查询语句
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017005 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved