1. paizaラーニングトップ
  2. レベルアップ問題集
  3. 新・SQL入門編04ドリル(言語選択)
  4. 問題一覧 MySQL編
  5. 応急メニュー表 MySQL編

新・SQL入門編04ドリルのサムネイル
応急メニュー表 MySQL編(paizaランク D 相当)

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

問題

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

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

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

menu

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


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


このお店では、ある日店舗にものすごい雷が落ちた衝撃でなぜかデータベースの一部のレコードが消失してしまいました。ついでにメニュー表のデータも消失してしまったため、今残っているデータから仮のメニュー表をつくることになりました。

データが残っているメニューについて、メニュー名、カテゴリ名、価格がこの順で載ったメニュー表を出力してください。なお、カテゴリ名が消失して見つからない場合はNULLを表示してください。

ヒント


・右外部結合か左外部結合のどちらかが適しています
FROM テーブル名1 RIGHT OUTER JOIN テーブル名2 ON 条件: 条件テーブル名1テーブル名2を右外部結合する
FROM テーブル名1 LEFT OUTER JOIN テーブル名2 ON 条件: 条件テーブル名1テーブル名2を左外部結合する

入力例1
menu テーブル
menu_idcategory_idnameprice
11ハンバーガー200
21チーズバーガー250
31チキンバーガー300
............
category テーブル
category_idname
1バーガー
3デザート
4ドリンク
出力例1
name name price
ハンバーガー バーガー 200
チーズバーガー バーガー 250
チキンバーガー バーガー 300
...

問題一覧へ戻る

ページの先頭へ戻る