sqlzoo:6】的更多相关文章

sql语句的编写需要按照实际的例子来练习. 如果自己来做准备,需要你自己搭好数据库,建好库和表,还要填入数据,最后自己想出题目和正确答案. 不过,现在我发现了一个好去处,http://www.sqlzoo.cn/,里面有数据,可以在线执行sql语句,有题目和解答. 感谢作者为我们做的一切.…
title: SQL-Learning date: 2019-03-12 20:37:21 tags: SQL --- 这是关于在一个SQL学习网站的练习题答案记录:SQL教程 SQL基础 由一些简单的查询开始 这里的默认表格为WORLD表格 . name continent area population gdp Afghanistan Asia 652230 25500100 20343000000 Albania Europe 28748 2831741 12960000000 Alger…
https://sqlzoo.net/wiki/SELECT_names 答案在:https://github.com/codyloyd/sqlzoo-solutions/blob/master/SQLZOO_solutions.md 国内的面试可能刷这些题有点水土不服,更多人可能喜欢刷那个经典的50道题:https://www.jianshu.com/p/476b52ee4f1b 关于Order By的高级玩法,利用返回布尔值0,1来单独排序个别的Row: 另外一种写法,利用CASE WHEN…
https://sqlzoo.net 8. 美國.印度和中國(USA, India, China)是人口又大,同時面積又大的國家.排除這些國家. 顯示以人口或面積為大國的國家,但不能同時兩者.顯示國家名稱,人口和面積. (成為大國的兩種方式:如果它有3百萬平方公里以上的面積,或擁有250百萬(2.5億)以上人口) SELECT `name`, `population`, `area` FROM `world` WHERE (area>3000000 AND population<2500000…
The JOIN operation 注意:where语句中对表示条件的需要用单引号, 下面的译文使用的是有道翻译如有不正确,请直接投诉有道 01.List the films where the yr is 1962 [Show id, title] 译文:列出年上映时间为1962年的电影(显示id,片名) SELECT id, title FROM movie WHERE yr=1962; 02.Give year of 'Citizen Kane'. 译文:请说出<公民凯恩>年份. SE…
The JOIN operation 注意:where语句中对表示条件的需要用单引号, 下面的译文使用的是有道翻译如有不正确,请直接投诉有道 01.Modify it to show the matchid and player name for all goals scored by Germany. To identify German players, check for: teamid = 'GER 译文:修改后显示德国队所有进球的比赛id和球员名字.要确定德国球员,请检查:teamid…
SUM and COUNT 注意:where语句中对表示条件的需要用单引号, 下面的译文使用的是有道翻译如有不正确,请直接投诉有道 01.Show the total population of the world. 译文:展示世界总人口. SELECT SUM(population) FROM world 02.List all the continents - just once each. 译文:列出所有的大陆——每个大陆只列出一次. SELECT DISTINCT continent F…
SELECT within SELECT Tutorial 注意:where语句中对表示条件的需要用单引号, 下面的译文使用的是有道翻译如有不正确,请直接投诉有道 01.List each country name where the population is larger than that of 'Russia'. 译文:列出每个国家的人口超过“俄罗斯”的名字. select name from world where population>(select population from…
01.SELECT from WORLD Tutorial 01.显示所有国家的名称,大洲和人口. SELECT name, continent, population FROM world; 02.显示人口大于等于200000000的国家. select name from world where population > 200000000; 03.找出有至少2億人口的國家名稱,及人均國內生產總值. select name,gdp/population from world where po…
List the continents that have a total population of at least 100 million. 这题考察的是使用集聚函数生成表之后,如何过滤 一般我们生成一个查询结果集都会使用 where 表达式来过滤不想要的内容, 但是group by分组表达式在SQL中是在where过滤之后才能执行,所以当group by分组之后,我们需要另外一个表达式having 来过滤分组聚集后的结果集 having sum(population)>=10000000…
SELECT name, continent FROM world a WHERE population > ( FROM world b WHERE a.continent = b.continent AND a.name <> b.name) http://dba.stackexchange.com/questions/4066/cant-retrieve-data-of-countries-and-regions 老外也有在论坛为这题发愁的,幸好下面有人解答,我找着思路把这题给抄了…
Find the continents where all countries have a population <= 25000000. Then find the names of the countries associated with these continents. Show name,continent and population. 这道题,我一开始理解错了,我以为是整个洲人口 <= 25000000,然后列出这些洲所在的国家以及人口 后来select几遍之后才发现理解错题…
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 ) 其实这种>=ALL(子查询) 最不好理解,…
只发后面提升题目的题解,前面的太简单,写下来也没有意义 12.查找尤金•奧尼爾EUGENE O'NEILL得獎的所有細節 Find all details of the prize won by EUGENE O'NEILL select * from nobel where winner ='EUGENE O\'NEILL' 题目推荐用两个‘符号来转义 个人还是推荐linux系统常用的转义符号\,这个基本上是类unix的传统 13.列出爵士的獲獎者.年份.獎頁(爵士的名字以Sir開始).先顯示…
第一個例子列出球員姓氏為'Bender'的入球數據. * 表示列出表格的全部欄位,簡化了寫matchid, teamid, player, gtime語句. 修改此SQL以列出 賽事編號matchid 和球員名 player ,該球員代表德國隊Germany入球的.要找出德國隊球員,要檢查: teamid = 'GER' SELECT matchid,player FROM goal WHERE teamid='GER' 由以上查詢,你可見Lars Bender's 於賽事 1012入球..現在…
For each continent show the number of countries: SELECT continent, COUNT(name) FROM world GROUP BY continent For each continent show the total population: SELECT continent, SUM(population) FROM world GROUP BY continent WHERE and GROUP BY. The WHERE f…
展示世界的總人口. SELECT sum(population) FROM world 列出所有的洲份, 每個只有一次. select distinct(continent) from world 找出非洲(Africa)的GDP總和. select sum(gdp) from world where continent='Africa' 有多少個國家具有至少百萬(1000000)的面積. select count(name) from world ('France','Germany','Sp…
列出每個國家的名字 name,當中人口 population 是高於俄羅斯'Russia'的人口. SELECT name FROM world WHERE population > (SELECT population FROM world WHERE name='Russia') 列出歐州每國家的人均GDP,當中人均GDP要高於英國'United Kingdom'的數值. select name from world where continent='Europe' and gdp/popu…
顯示1980年物理學(physics)獲獎者,及1984年化學獎(chemistry)獲得者. select yr,subject,winner from nobel ) ) 查看1980年獲獎者,但不包括化學獎(Chemistry)和醫學獎(Medicine). select yr,subject,winner from nobel and subject not in('Chemistry','Medicine') 顯示早期的醫學獎(Medicine)得獎者(1910之前,不包括1910),…
顯示具有至少2億人口的國家名稱. 2億是200000000,有八個零. SELECT name FROM world 找出有至少200百萬(2億)人口的國家名稱,及人均國內生產總值. select name ,GDP/population from world 顯示'South America'南美洲大陸的國家名字和以百萬為單位人口數. 將人口population 除以一百萬(1000000)得可得到以百萬為單位人口數. from world where continent like 'Sout…
SELECT from nobel篇 1. 更改查詢以顯示1950年諾貝爾獎的獎項資料. 答案: SELECT yr, subject, winner FROM nobel WHERE yr = 1950 2.顯示誰贏得了1962年文學獎(Literature). SELECT winner FROM nobel WHERE yr = 1962 AND subject = 'Literature' 3.顯示“愛因斯坦”('Albert Einstein') 的獲獎年份和獎項. SELECT yr…
SELECT from world篇 11. 题目: The CASE statement shown is used to substitute North America forCaribbean in the third column. Show the name - but substitute Australasia for Oceania - for countries beginning with N. (翻译:让你给出名字和所属大洲的名字,               其中所属大…
12.查找尤金•奧尼爾EUGENE O'NEILL得獎的所有細節 我: select yr , subject , winner from nobel where winner = 'eugene o'neill ' ; 无法查询. 正确: select yr ,subject ,winner from nobel where winner = 'eugene o\'neill '; 13.列出爵士的獲獎者.年份.獎頁(爵士的名字以Sir開始).先顯示最新獲獎者,然後同年再按名稱順序排列. 我:…
1.“Bahamas 巴哈馬”中有三個 a,還有嗎?找出所有國家,其名字包括三個或以上的a. SELECT name FROM world WHERE name LIKE '%a%a%a%' 2.“India 印度”和”Angola 安哥拉”的第二個字母都是 n.你可以用底線符_當作單一個字母的萬用字元. SELECT name FROM world WHERE name LIKE '_n%' ORDER BY name 找出所有國家,其名字以t作第二個字母: SELECT name FROM…
World Country Profile: Aggregate functions This tutorial is about aggregate functions such as COUNT, SUM and AVG. An aggregate function takes many values and delivers just one value. For example the function SUM would aggregate the values 2, 4 and 5…
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…
name continent Afghanistan Asia Albania Europe Algeria Africa Andorra Europe Angola Africa .... name:國家名稱continent:洲份 1. 你能够用WHERE name LIKE 'B%'來找出以 B 為開首的國家.%是萬用字元,能够用代表不论什么字完. 找出以 Y 為開首的國家. SELECT name FROM world WHERE name LIKE 'Y%' 2.找出以 Y 為結尾的國…
SELECT from Nobel Tutorial 1.Change the query shown so that it displays Nobel prizes for 1950. SELECT yr, subject, winner FROM nobel : 2.Show who won the 1962 prize for Literature. and subject='literature'; 3.Show the year and subject that won 'Alber…
首先查看world表的字段: name continent area population gdp capital tld flag SELECT * FROM world: 2.显示人口至少为2亿的国家/地区的名称.2亿=200million SELECT name FROM world ; 3.给出人口至少2亿的国家的名称和人均国内生产总值. ; 4.显示continent ='South America'的国家的名称和人口. 将人口除以100万,以获得数百万人口,也就是population…
SELECT from Nobel Tutorial 1.Change the query shown so that it displays Nobel prizes for 1950. SELECT yr, subject, winner FROM nobel WHERE yr = 1950 2.Show who won the 1962 prize for Literature. SELECT winner FROM nobel WHERE yr = 1962 AND subject =…