完了済み予約をゲスト名・ホテル名付きで確認

中級
JOIN

完了済み予約をゲスト名・ホテル名付きで確認

JOINや集計関数など、実務でよく使うSQL構文を練習する中級問題です。

ブラウザ上でSQLを書いて解いてみましょう

ログインして挑戦できます

ログインして解く

問題文

hotel_bookings・hotel_guests・hotel_rooms・hotelsをJOINし、statusが「completed」の予約についてゲスト名・ホテル名・部屋タイプ・チェックイン日・合計額を取得してください。

結合のヒント

  • hotel_guestsテーブル(エイリアス: g)との結合条件: hb.guest_id = g.id(hotel_bookings.guest_id = hotel_guests.id)
  • hotel_roomsテーブル(エイリアス: hr)との結合条件: hb.room_id = hr.id(hotel_bookings.room_id = hotel_rooms.id)
  • hotelsテーブル(エイリアス: h)との結合条件: hr.hotel_id = h.id(hotel_rooms.hotel_id = hotels.id)

取得列: hb.id, g.name AS guest_name, h.name AS hotel_name, hr.room_type, hb.check_in, hb.check_out, hb.total_amount

この問題で学べること

  • JOIN の構文・考え方
  • 中級レベルのSQLクエリの書き方
  • ブラウザ上でSQLを実行して即座に結果を確認する練習

使用テーブル

hotel_bookingshotel_guestshotel_roomshotels

難易度・対象者

難易度中級
カテゴリJOIN
対象者JOINや集計関数など、実務でよく使うSQL構文を練習する中級問題です。

関連問題


実際にSQLを書いて理解を深めましょう

ブラウザ上で実行できる採点付きSQLエディタで練習できます

ログインして解く
QSQL Quest