标签:either ted lsp asi tor lis value rman content
This tutorial looks at how we can use SELECT statements within SELECT statements to perform more complex queries.
name | continent | area | population | gdp |
---|---|---|---|---|
Afghanistan | Asia | 652230 | 25500100 | 20343000000 |
Albania | Europe | 28748 | 2831741 | 12960000000 |
Algeria | Africa | 2381741 | 37100000 | 188681000000 |
Andorra | Europe | 468 | 78115 | 3712000000 |
Angola | Africa | 1246700 | 20609294 | 100990000000 |
... |
List each country name where the population is larger than that of ‘Russia‘.
world(name, continent, area, population, gdp)
SELECT name FROM world WHERE population > (SELECT population FROM world WHERE name=‘Russia‘)
SELECT name FROM world WHERE gdp/population > (SELECT gdp/population FROM world WHERE name=‘United Kingdom‘) and continent=‘Europe‘
select name,continent from world where continent in (select continent from world where name in(‘Argentina‘,‘Australia‘)) order by name
select name,population from world where population > (select population from world where name=‘Canada‘) and population <(select population from world where name=‘Poland‘) order by name
Germany (population 80 million) has the largest population of the countries in Europe. Austria (population 8.5 million) has 11% of the population of Germany.
Show the name and the population of each country in Europe. Show the population as a percentage of the population of Germany.
select name,CONCAT(ROUND(100*population/(select population from world where name=‘Germany‘)),‘%‘) from world where continent=‘Europe‘
select name from world where gdp > ALL(select gdp from world where gdp > 0 and continent=‘Europe‘)
SELECT continent, name, area FROM world x WHERE x.area >= ALL(SELECT y.area FROM world y WHERE y.continent=x.continent AND area>0)
select continent,name from world x where x.name=(select y.name from world y where y.continent=x.continent order by name limit 1)
SELECT name, continent, population FROM world x WHERE 25000000>=ALL (SELECT population FROM world y WHERE x.continent=y.continent AND population>0)
select name,continent from world x where x.population/3 >= all(select population from world y where x.continent=y.continent and x.name!=y.name and y.population>0)
sqlzoo练习答案--SELECT within SELECT Tutorial
标签:either ted lsp asi tor lis value rman content
原文地址:http://www.cnblogs.com/brucemengbm/p/7191649.html