这两条语句该怎么写?
有两个表USER和GROUP,USER含有两个字段name、points,GROUP含有两个字段name、group。
试用一条SQL语句找出分数最高的USER所在的组名;
试用一条SQL语句找出平均分数最高的USER所在的组名。
问题点数:30、回复次数:6Top
1 楼erikchanghua()回复于 2005-04-04 16:12:17 得分 10
我也学数据库也不是很久,你试试我这种写法可以不
第一个:
select group
from group
where name in (select name from user where points=(select max(points) from user));
第二个
select group
from group
where name=(select name from user where points=
(select max(avg(points)) from user
group by name));Top
2 楼chenchen2003(晨辰)回复于 2005-04-04 16:15:24 得分 20
找出分数最高的USER所在的组名:
SELECT group FROM USER,GROUP where USER.name = GROUP.name and
points = (SELECT MAX(points) FROM USER)Top
3 楼chenchen2003(晨辰)回复于 2005-04-04 16:28:55 得分 0
不好意思,没看懂题意。再来。
找出分数最高的USER所在的组名:
SELECT GROUP.group FROM USER,GROUP WHERE USER.name = GROUP.name and USER.points = (SELECT MAX(SUM(points)) FROM USER GROUP BY name)
找出平均分数最高的USER所在的组名
SELECT GROUP.group FROM USER,GROUP WHERE USER.name = GROUP.name and USER.points = (SELECT MAX(AVG(points)) FROM USER GROUP BY name)
Top
4 楼znbalan()回复于 2005-04-04 16:29:14 得分 0
1、select group from group where exists(select 1 from user where name=group.name and points=(select max(points) from user));Top
5 楼chenchen2003(晨辰)回复于 2005-04-04 16:31:45 得分 0
楼主注意,你的那两个表在ORACLE里面是建不起来的。你用关键字作表表名。Top
6 楼MIS_ECSM(雖然起名字不要錢﹐但是混在社區﹐昵稱不宜太長。)回复于 2005-04-04 18:35:05 得分 0
能建起來的,關鍵字必須用""引起來,區分大小寫Top




