首页 > 代码库 > sqlzoo.net刷题2
sqlzoo.net刷题2
Find the largest country (by area) in each continent, show the continent, thename and the area:
找到每个洲面积最大的国家:
SELECT continent, name, area FROM world x WHERE area >= ALL (SELECT area FROM world y WHERE y.continent=x.continent AND area>0)
其实这种>=ALL(子查询) 最不好理解,因为SQL不是一门过程化语言,所以用起来其实是比较蛋疼的
(多读几遍就能差不多能分析个大概出来,但是自己写又一下子想不出来)
最好的理解是 对于全表world 先遍历,然后对每行的area还有continent 做一次子查询,
针对同一个continent 检索所有area行,让 父查询>=子查询,这样就能找到每个洲面积最大的国家了
sqlzoo.net刷题2
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。