SQLZOO练习题(3)
1.查找所有国家的名字,大洲,人口
select name, continent, population from world
2.查找人口多余两亿的国家名字
select name from world where population>200000000
3.给出那些人口至少2亿的国家的名称和人均GDP。
select name,gdp/population from world where population>200000000;
4.显示南美洲国家的人口以百万为单位
select name,population/1000000 as '人口(百万)' from world where continent='South America'
5.显示法国,德国,意大利的名称和人口
select name,population from world where name in('France','Germany','Italy')
6.列出名称中包含“United”一词的国家
select name from world where name like '%United%';
大国有两种说法:一个国家的面积超过300万平方公里,或者人口超过2.5亿,那么这个国家就是大国。
7.按面积或人口划分国家。显示姓名,人口和地区。
select name,population,area from world where population>250000000 or area>3000000;
8.哪些国家面积大(超过300万),哪些国家人口大(超过2.5亿),但不 是两者都大。显示姓名,人口和地区。
澳大利亚面积大但人口少,应该包括在内。
印尼人口多但面积小,应该包括在内。
中国人口多,面积大,应该被排除在外。
英国人口少,面积小,应该被排除在外。
select name,population,area from world where population>250000000 and area<3000000 or population<250000000 and area>3000000;
9.显示“南美洲”大陆国家的名称,人口以百万为单位,GDP以十亿为单位。使用ROUND函数将值显示到小数点后两位。
select name,round(population/1000000,2)as '人口(百万)',round(gdp/1000000000,2)as '十亿' from world where continent='South America';
10.列出那些GDP至少达到一万亿的国家名字,然后计算人均gdp这个值四舍五入到1000。
select name,round(gdp/population,-3) as '人均' from world where gdp>1000000000000;
11.列出国家名字和首都名字的长度一样的国家名字与首都名字(length函数)
select name,capital from world where length(name)=length(capital);
12.瑞典和瑞典的首都是斯德哥尔摩。这两个单词都以字母“S”开头。显示国家名字首字母与国家首都名字首字母一样的国家与首都。使用函数left();
select name,capital from world where left(name,1)=left(capital,1) and name!=capital;
13.赤道几内亚和多米尼加共和国的名字中有所有的元音(a e i o u)。它们不算数,因为它们的名字里不止一个单词。找到一个国家,它的名字里有所有的元音,没有空格。
select name from world where name like '%a%' and name like '%e%' and name like '%i%' and name like '%o%' and name like '%u%' and name not like '% %';