题库 软件开发 题目列表 给定 Person 表包含所有球员的个人信息,有 Id(序号...
单选题
给定 Person 表包含所有球员的个人信息,有 Id(序号), Name(姓名),Height(身高) 和 TeamId(球队编号)。

+----+-------+--------+--------------+
| Id | Name  | Height | TeamId         |
+----+-------+--------+--------------+
| 1  | Bob   | 201      | 1            |
| 2  | Jerry | 199      | 2            |
| 3  | Tim   | 197      | 2            |
| 4  | Rall  | 200      | 1            |
| 5  | Harry | 189      | 3            |
| 6  | Jon   | 207      | 3            |
| 7  | Arran | 200      | 1            |
+----+-------+--------+--------------+
给定 Team 表包含有球队的信息,有Id(序号), TeamName(球队名称)。

+----+----------+
| Id | TeamName |
+----+----------+
| 1  | BigSun   |
| 2  | King        |
| 3  | Apply    |
+----+----------+

下面哪条SQL可以查找出每个球队中身高最高的队员信息:
注:根据上述给定的表,可得出:Bob、Jerry、Jon分别在BigSun、King、Apply队中身高最高。
+----------+-------+--------+
| TeamName | Name  | Height |
+----------+-------+--------+
| BigSun   | Bob   |    201 |
| King     | Jerry |    199 |
| Apply    | Jon   |    207 |
+----------+-------+--------+
A.
select Team.TeamName as 'TeamName', Person.Name as 'Name', Height
from Person join Team on Person.TeamId = Team.Id
where (Person.TeamId, Height) in (select TeamId, max(Height) from Person group by TeamId);
B.

select d.TeamName as TeamName,e.Name as Name,max(e.Height) as Height from Person e inner join Team d on e.TeamId=d.Id group by e.TeamId;

C.

select a.TeamName TeamName,b.Name Name,b.Height Height from Team a left join (select max(Height) Height,TeamId,Name from Person group by TeamId) b on b.TeamId=a.Id;

D.

select a.TeamName TeamName,b.Name Name,b.Height Height from Team a right join (select max(Height) Height,TeamId,Name from Person group by TeamId) b on b.TeamId=a.Id;

题目信息
校招真题
-
正确率
0
评论
12
点击