LoginSignup
2
0

More than 3 years have passed since last update.

【SQL ZOO 解答集】(2 SELECT from World)

Last updated at Posted at 2019-10-14

本投稿の目的

  • sql学習サイトsqlzooを用いたsqlの学習と理解
  • 学習のアウトプット
  • 学習メモとして、かつ公式の解答ページがなかったので作成した。

0 SELECT basics
1 SELECT name
2 SELECT from World←いまここ
3 SELECT from Nobel
4 SELECT within SELECT
5 SUM and COUNT
6 JOIN
7 More JOIN operations
8 Using Null
8+ Numeric Examples
9 Self join

2 SELECT from World

問題1

全ての国の国名と大陸と人口を表示する SQL コマンドを実行する。
SELECT name, continent, population 
FROM world

問題2

人口が2億人(200000000 ゼロが8個ある)以上の国の名前を表示する
SELECT name 
FROM world
WHERE population >= 200000000

問題3

人口population2億人以上の国の国名nameと国民一人当たりの国内総生産を表示
SELECT name, GDP/population
FROM world
WHERE population >= 200000000

問題4

大陸continentが South America の国のnameとpopulationを 百万人単位 に変換して表示する。
人口 population を 1000000 で割ると100万人単位の人口になる。
SELECT name, population/1000000
FROM world
WHERE continent = 'South America'

問題5

国名nameと人口population を France, Germany, Italy について表示する。
SELECT name, population
FROM world
WHERE name in ('France', 'Germany', 'Italy')

問題6

国名に 'United' を含む国の国名を特定する。
SELECT name
FROM world
WHERE name like '%United%'

問題7

ビッグになる2つの道: ビッグな国とは、面積が 3000000 平方キロ以上 または 人口が 250000000 以上の国とする。
面積か人口がビッグな国を表示する。国名 人口 面積(name, population , area)を表示する。
SELECT name, population, area
FROM world
WHERE area >= 3000000 OR population >= 250000000

問題8

オーストラリアは面積は大きく人口は少ないので、含まれる。
インドネシアは人口は大きく面積は狭いので、含まれる。
中国は人口も面積も大きいので除かれる。
イギリスは人口も面積も小さいので除かれる。
SELECT name, population, area
FROM world
WHERE (area > 3000000 AND population < 250000000)
  OR (area < 3000000 and population > 250000000)

問題9

南アメリカ大陸にある国の、国名name、人口population(100万人単位)、GDP(10億ドル単位)を表示する。 ROUND ROUND 関数で小数点下2桁で表示。
SELECT name, ROUND(population/1000000,2), ROUND(gdp/1000000000, 2)
FROM world
WHERE continent = 'South America'

問題10

国内総生産 GDP が1兆ドル以上(0が12個)の国の国名と国民一人当たりのGDPを表示する。 GDPの単位は$1000単位にまとめる。
SELECT name, ROUND(gdp/population, -3)
FROM world
WHERE gdp > 1000000000000

問題11

ギリシャ(Greece) の首都はアテネ(Athens)。 GreeceとAthensの綴りはどちらも同じ6文字。
国名 name と首都 capital が同じ長さの国の、国名と首都を表示する。
LENGTH 関数で文字列の文字数を求める。
SELECT name, capital
FROM world
WHERE LEN(name) = LEN(capital)

問題12

国名と首都の先頭の文字が同じである国
国名と首都名を表示する。
ただし、国名と首都名が同じ場合は除く。
SELECT name, capital 
FROM world 
WHERE LEFT(name, 1) = LEFT(capital, 1) AND name <> capital;

問題13

国名に全ての母音を含む国
空白を含まない単語1つの国名を検索する。
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 '% %';

前回
1 SELECT name

2
0
4

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0