新・SQL入門編04ドリルのサムネイル
IDなしのメニュー表を作ろう MySQL編(paizaランク D 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

※ この問題集は、動画講座『新・SQL入門編4: テーブルの結合を理解しよう』で学習した内容について反復して練習できるドリルです。分からないことがあれば、動画に戻って復習してみてください。

メニューがmenu テーブルに、カテゴリがcategory テーブルに保存されています。
テーブルの形式は次の通りです。

menu

#カラム名データ型内容
1menu_id整数 (int)メニュー番号
2category_id整数 (int)カテゴリ番号
3name文字列 (varchar)メニュー名
4price整数 (int)価格



category
#カラム名データ型内容
1category_id整数 (int)カテゴリ番号
2name文字列 (varchar)カテゴリ名



「デザートを注文するごとに割引券をプレゼント」という内容のキャンペーンをこの店で行ったところ、デザートと間違えてドリンクのバニラシェイクやサイドメニューのコーンサラダを頼んでしまうお客さんが続出しました。

この事態を重く受け止めた店側がメニュー表を確認すると、なんとメニューのカテゴリがまったく掲載されていませんでした。そのため、これを機に新しくメニュー表を作り直すことになりました。

メニューやカテゴリに振られている番号は、システム上の都合でありお客さんに見せる必要はありません。メニュー名、カテゴリ名、価格のみがこの順で載ったメニュー表を出力してください。

ヒント


FROM テーブル名1 INNER JOIN テーブル名2 ON 条件: 条件テーブル名1テーブル名2を内部結合する
SELECT カラム名1, カラム名2, ... FROM テーブル名;: テーブル名 テーブルの カラム名1, カラム名2, ... カラムの値を取得できる

入力例1
menu テーブル
menu_idcategory_idnameprice
11ハンバーガー200
21チーズバーガー250
31チキンバーガー300
............
category テーブル
category_idname
1バーガー
2サイドメニュー
3デザート
......
出力例1
name name price
ハンバーガー バーガー 200
チーズバーガー バーガー 250
チキンバーガー バーガー 300
...

問題一覧へ戻る

  1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 新・SQL入門編04ドリル(言語選択)
  4. 問題一覧 MySQL編
  5. IDなしのメニュー表を作ろう MySQL編
ページの先頭へ戻る