SQLZOOのSELECT basicsを解いてみた

さいきんSQLを勉強していまして、Gunosyの「非エンジニアが最速でSQLをマスターする方法」に書いてある『10年戦えるデータ分析入門』→SQLZOO (https://sqlzoo.net/wiki/SQL_Tutorial) という順番で学習を進めています。

 SQLZOOは出力が合っているのか違っているのかは教えてくれるのですが、どんなSQL文を書けば正解できるのか教えてくれません。すでに日本語でSQLZOOの解答を公開してくださっている方もおられますが、私も自分の勉強のアウトプットとして、解答例を公開したいと思います。

 SQLZOOは問題文が英語なので、あまり自信はありませんが問題文の和訳も用意しました。意訳なので正確さに欠けるかもしれませんが……

Introducing the world table of countries

この例は「フランス」の人口を表示するために、WHERE節を使っています。文字列はシングルクオートの中にいれる必要がある点に注意してください。この例をドイツの人口を表示するように修正してください。

解答例

SELECT population 
FROM world
WHERE name = 'Germany';

Scandinavia

リストをチェックするINはリスト内に項目があるかどうかチェックしてくれます。この例は「ブラジル」「ロシア」「インド」「中国」の名前と人口を示します。「スウェーデン」「ノルウェー」「デンマーク」の名前と人口を示してください。

解答例

SELECT name, population
FROM world
WHERE name IN ('Sweden', 'Norway', 'Denmark’);

Just the right size

どの国が小さくもなく大きくもないでしょうか? BETWEENは範囲をチェックしてくれます(条件として指定された範囲は境界値を含みます)。この例は面積が25000~300000平方kmの国を表示します。この例を修正して、200000~250000平方kmの面積を持つ国の名前とその面積を表示してください。

解答例

SELECT name, area
FROM world
WHERE area BETWEEN 200000 AND 250000;

Follow me!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA