SQLで武器の情報をみてみよう

SQL自作サンプル集へ
基本情報技術者試験トップへ
これからプログラミングを始める方へ
資格トップへ

今日は、闘いに備えて、
武器の威力の平均・最大値などを求めて見ます。

まず、データベースを選択して、
武器の表Weaponを表示します。

これらの武器の最大の威力は「ジャイアンの歌」の100、
最小は「へ(屁)」の3、全てのデータ件数は5件、

匂い系の武器は「へ」と「正◎丸」の2件、

威力が6以上は、「かみなりビーム」、「ジャイアンの歌」、
「正◎丸」の3件、

平均(24.2)より大きいのは、 「ジャイアンの歌」のみです。

これらをSQLで取り出して見ます。
バカなことやっているようですが、
個人的には勉強になっています(=^・^=)

まず、power(威力)の合計と平均を求めて見ます。

select sum(power),avg(power) from Weapon;

最大と最小を求めます。

select max(power),min(power) from Weapon;

件数を求めます。

select count(*) from Weapon;

匂い(smellのsme)系統の武器を求めます。

select name,type_id from Weapon where type_id=’sme’;

匂い(smellのsme)系統の武器の件数を求めます。

select count(type_id) from Weapon where type_id=’sme’;

power(威力)が6以上の件数を求めます。

select count(power) from Weapon where power>=6;

最後に、威力が平均以上の武器の名前と威力を表示させます。

select name,power from Weapon where power >= (select avg(power) from Weapon);

お疲れ様でした。

SQL自作サンプル集へ
基本情報技術者試験トップへ
これからプログラミングを始める方へ
資格トップへ

SQLで条件抽出攻撃開始!!

SQL自作サンプル集へ
基本情報技術者試験トップへ
これからプログラミングを始める方へ
資格トップへ

身近にこういう人いませんか?

こういう人にお灸をすえましょう。
前回作った武器の表Weaponを表示します。

select * from Weapon;

何で攻撃しようかな。
わくわく(=^・^=)

最初は「へ」をぶっかけてやりましょう。
「’」(シングルクォーテーション)で囲みます。

select name from Weapon where buki_id=’B0004′;

次に、名前に「◎」が付く攻撃をしましょう。

select name from Weapon where name like ‘%◎%’;

「%」はワイルドカードっていって、
「◎」を含むなどを指定できます。

次は、威力が6以上の武器を使います。

select name,power from Weapon where power>=6;

最後に、威力が大きい順に並べます。

select name,power from Weapon order by power desc;

次回は集約関数を使ってみます。

SQL自作サンプル集へ
基本情報技術者試験トップへ
これからプログラミングを始める方へ
資格トップへ

ブラウザだけでMySQLを即学習【サザエさんの例 その2】|キャラクターの追加と年齢の列追加|WHEREで25歳以上を抽出

この記事では、ブラウザだけでMySQLを即学習【サザエさんの例 その1】の続きですので、まずはそちらをご覧くださいませ。

使用ブラウザはmyCompilerのMySQLを使っています。

現在、ブラウザのMySQLの左側の画面はこの様なコードが入っています。

-- create a table
CREATE TABLE sazaefamily (
  id INTEGER PRIMARY KEY,
  name TEXT NOT NULL,
  gender TEXT NOT NULL
);
-- insert some values
INSERT INTO sazaefamily VALUES (1, '磯野波平', '男性');
INSERT INTO sazaefamily VALUES (2, 'フグ田サザエ', '女性');
-- fetch some values
SELECT * FROM sazaefamily WHERE gender = '女性';

表と実行結果はこの様なイメージの表になっています。

この表から「女性」のみを抽出して、

この様な抽出結果のイメージになり、右側の実行を押すと、

この様に実行されました。
キャラクターが2人だけなので、INSERT INTO sazaefamily で表にキャラクターを足して行きます。

ここで便利なショートカットキーは、既にあるキャラクターの行にカーソルがある状態で、[Alt]+[Shift]+[↓]を押すと複製出来て他のキャラクターを追加出来ます。
Macの方は[Alt]の代わりに[option]を押してみて下さい。

この様なイメージの表を作ります。

データ追加部分のコードです。

-- insert some values
INSERT INTO sazaefamily VALUES (1, '磯野波平', '男性');
INSERT INTO sazaefamily VALUES (2, 'フグ田サザエ', '女性');
INSERT INTO sazaefamily VALUES (3, '磯野カツオ', '男性');
INSERT INTO sazaefamily VALUES (4, '磯野ワカメ', '女性');
INSERT INTO sazaefamily VALUES (5, '穴子さん', '男性');

実行結果のイメージと、実行結果です。

ここで、表全体を表示してみます。

-- fetch some values
SELECT * FROM sazaefamily WHERE gender = '女性';
SELECT * FROM sazaefamily;

実行結果です。
追加したキャラクターも表示されました。

次に、年齢の列を作ります。
まず、表の完成イメージです。

まずは、列「age」を加える、テーブル作成部分のコードです。

-- create a table
CREATE TABLE sazaefamily (
  id INTEGER PRIMARY KEY,
  name TEXT NOT NULL,
  gender TEXT NOT NULL,
  age INTEGER NOT NULL
);

注意!「gender」の最後に「,(カンマ)」を入力して下さい。

また、年齢を入力するコードです。

-- insert some values
INSERT INTO sazaefamily VALUES (1, '磯野波平', '男性',54);
INSERT INTO sazaefamily VALUES (2, 'フグ田サザエ', '女性',24);
INSERT INTO sazaefamily VALUES (3, '磯野カツオ', '男性',11);
INSERT INTO sazaefamily VALUES (4, '磯野ワカメ', '女性',9);
INSERT INTO sazaefamily VALUES (5, '穴子さん', '男性',27);

実行して、表が作れたことを確認します。

それでは最後に、25歳以上のキャラクターを表示してみます。

-- fetch some values
SELECT * FROM sazaefamily WHERE gender = '女性';
SELECT * FROM sazaefamily;
SELECT * FROM sazaefamily WHERE age>=25;

実行結果のイメージと画面です。

ここまでのコードはこちらになります。

-- create a table
CREATE TABLE sazaefamily (
  id INTEGER PRIMARY KEY,
  name TEXT NOT NULL,
  gender TEXT NOT NULL,
  age INTEGER NOT NULL
);
-- insert some values
INSERT INTO sazaefamily VALUES (1, '磯野波平', '男性',54);
INSERT INTO sazaefamily VALUES (2, 'フグ田サザエ', '女性',24);
INSERT INTO sazaefamily VALUES (3, '磯野カツオ', '男性',11);
INSERT INTO sazaefamily VALUES (4, '磯野ワカメ', '女性',9);
INSERT INTO sazaefamily VALUES (5, '穴子さん', '男性',27);
-- fetch some values
SELECT * FROM sazaefamily WHERE gender = '女性';
SELECT * FROM sazaefamily;
SELECT * FROM sazaefamily WHERE age>=25;

お疲れ様でした。ブレイクタイムPhotoは、

清瀬ひまわりフェスティバルのひまわりです。

【オススメ入門書】
「いちばんやさしい SQL入門教室」
ソフトカバー
Kindle版

MySQL自作サンプル集へ戻る

自己紹介ページ


写真クリエイターとしての活動