1、题目描述
来源:力扣(LeetCode)
2、解题思路
其实就是做3个子表分别查询属于各大洲的学生,然后以最多人的大洲为主表,进行外连接
1# 3个子表,例如,美洲的
select name as America,@a:=@a+1 as rank1
from student ,(select @a:=0) a
where continent="America"
order by name
2# 3表联查
3、提交记录
select America,Asia,Europe
from
(select name as America,@a:=@a+1 as rank1
from student ,(select @a:=0) a
where continent="America"
order by name
)ame
left join
(select name as Asia,@b:=@b+1 as rank2
from student ,(select @b:=0)b
where continent="Asia"
order by name
)asia
on ame.rank1=asia.rank2
left join
(select name as Europe,@c:=@c+1 as rank3
from student,(select @c:=0)c
where continent="Europe"
order by name
) eur
on ame.rank1=eur.rank3
240ms