个人sqlzoo在线练习

个人sqlzoo在线练习

  • 一、select基础
    • (一)、练习
    • (二)、测试
  • 二、SELECT names
  • 三、select from world Tutorial
    • (一)练习
    • (二)测试

题目在sqlzoo官网上

一、select基础

(一)、练习

  1. 使用where子句显示德国的人口
    select population from world where name = 'Germany'
  2. 检查列表单词in允许我们检查列表中是否有项目。显示“瑞典”,“挪威”和“丹麦” 的名称和人口。
    select name, population from world where name in ('Sweden', 'Norway', 'Denmark');
  3. BETWEEN允许范围检查(指定的范围包括边界值)。显示该国家/地区以及200,000到250,000之间的国家/地区的面积。
    select name, area from world where area BETWEEN 200000 and 250000

(二)、测试

  1. 产生此表的代码
name population
Bahrain 1234571
Swaziland 1220000
Timor-Leste 1066409

select name,population from world where populationBETWEEN 100000 and 150000

  1. 以下代码中获得的结果
    select name, population from world where name like "Al%"
name population
Albania 3200000
Algeria 32900000
  1. 以A或L结尾的国家
    select name from world name like "%A"or name like “%L”;
  2. 选择查询结果
    select name,length(name) from world where length(name)=5 and region='Europe'
name length(name)
Italy 5
Malta 5
Spain 5
  1. 选择查询结果
    select name, area*2 from world where population = 64000'
name area
andorra 936
  1. 显示面积大于50000,人口少过1000万(10000000)的国家
    select name,area,population from word where area > 50000 and population < 10000000
  2. 显示中国,澳大利亚,尼日利亚和法国的人口密度。
    select name,population/area from word name in('China', 'Nigeria', 'France', 'Australia')

二、SELECT names

  1. 您可以使用where name like 'B%'查找以“ B”开头的国家。
    %是通配符,可以匹配任何字符,查找以Y开头的国家
    select name from world where name like 'Y%'
  2. 查找以y结尾的国家
    select name from world where name like '%y'
  3. 卢森堡有x-一个国家也有x。将它们都列出。查找包含字母x的国家
    select name from world where name like '%x%'
  4. 冰岛,瑞士以土地结尾-但是还有其他地方吗?寻找以土地结尾的国家
    select name from world where name like '%land'
  5. 哥伦比亚以C开头,以ia结尾-还有两个类似的例子。查找以C开头且以ia结尾的国家
    select name from world where name like 'C%ia'
  6. 希腊有双重电子 -谁有双重o?查找名称中带有oo的国家
    select name from world where name like '%oo%'
  7. 巴哈马有三a -还有谁?发现有三个或更多的国家一之名
    select name from world where name like '%a%a%a%'
  8. 印度和安哥拉的第二个字符为n。您可以将下划线用作单个字符通配符。查找以“ t”为第二个字符的国家。
    select name from world where name like '_t%' ORDER BY name
  9. Lesotho 和 Moldova 两者都具有两个O字符分隔由其他两个字符。查找具有两个“ o”字符并彼此隔开的国家
    select name from world where name like '%o__o%
  10. 古巴和多哥有四个字符名称。找到正好有四个字符的国家
    select name from world where length(name)=4
  11. 卢森堡的首都是卢森堡。显示所有与国家名称相同的国查找名称为首都的国家
    select name from world where name=capita
  12. 墨西哥的首都是墨西哥城。显示首都所在国家的所有国家以及“城市”一词。找到首都所在的国家/地区加上“城市”
    select name from world where capital like concat(name, " City"
  13. 找到首都和首都所在国家名称的名称
    select capital,name from world where capital like concat("%",name,"%")
  14. 找到首都和名称,其中首都是国家名称的延伸。您应该包括墨西哥城,因为它比墨西哥更长。您不应将卢森堡包括在内,因为首都与国家/地区相同
    select capital,name from world where capital like concat('%',name,'_%')
  15. 对于Monaco-Ville,名称为Monaco,扩展名为-Ville
    显示名称和扩展名,其中首都是国家名称的扩展名。您可以使用SQL函数REPLACE。
    select name, REPLACE(capital, name, '') from world where capital like CONCAT('%',name,'%') and REPLACE(capital, name, '')

三、select from world Tutorial

(一)练习

  1. 显示所有国家的名称,大洲和人口。
    select name, continent, population from world
  2. 显示人口至少为2亿的国家/地区的名称。
    select name from world where population > 200000000
  3. 请列出那些人口至少为2亿的国家的名称和人均国内生产总值。
    select name,GDP/population from world where population > 200000000
  4. 以百万计的数字显示“南美洲”大陆国家的名称和人口。把人口除以100万,得到以百万为单位的人口。
    select name,population/1000000 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%'
  7. 成为大国有两种方式:一种是国土面积超过300万平方公里,另一种是人口超过2.5亿。显示国家的面积或人口是大的。显示姓名、人口和地区。
    select name,population,area from world where population >250000000 or area >3000000
  8. Exclusive OR(XOR)。显示按面积大(超过300万)划分的或按人口(超过2.5亿)划分的大国,但不同时显示这两个国家。显示姓名、人口和地区。澳大利亚有一个大区域,但是人口很少,应该包括在内。印度尼西亚有一个很多人口,但面积很小,应该包括在内。中国人口多,面积大,应该把它排除在外。英国人口少,面积小,应该排除在外。
    select name,population,area from world where population >250000000 xor area >3000000
  9. 以百万为单位显示南美洲大陆国家的名称和人口,以十亿为单位显示其国内生产总值。使用round函数将值显示为两位小数。南美洲的人口以百万计,GDP以十亿计,小数点后两位。
    select name,round(population/1000000,2),round(GDP /1000000000,2) from world where continent = 'South America'
  10. 显示GDP至少为1万亿(1000000000000,即12个零)的国家的名称和人均GDP。将这个值四舍五入到最接近的1000。显示万亿美元国家的人均GDP,最接近1000美元。
    select name, round(gdp/1000)*1000 from world where gdp > 1000000000000
  11. 希腊有首都雅典。每个字符串“希腊”和“雅典”都有6个字符。显示名称和大写字母,其中名称和大写字母具有相同的字符数。可以使用length函数查找字符串中的字符数
    select name,capital from world where length(name)=length(capital)
  12. 瑞典的首都是斯德哥尔摩。两个单词都以字母S开头。显示每个匹配项的名称和首字母所在的大写字母。不要包括名字和首都是同一个单词的国家。您可以使用 left函数来隔离第一个字符。。可以使用NOT EQUALS操作符。
    select name, capital from world where left(name,1)=left(capital,1)and name != capital
  13. 赤道几内亚和多米尼加共和国的名字中有所有的元音(a e i o u)。他们不算数,因为他们有一个以上的词在名字里找到一个国家,它的名字中有所有的元音字母,但是没有空格。您可以使用短语名称NOT LJKE %a%'来排除结果中的字符。搜索结果中漏掉了巴哈马和白俄罗斯等国,因为这些国家至少有一个“a”
    select name from world where name like '%e%' and name like '%a%'and name like '%i%' and name like '%o%' and name like '%u%' and name not like '% %'

(二)测试

你可能感兴趣的:(数据库)