課題内容

  1. 下記フォームに回答を入力し、提出すること。
  2. この形式で、9月の学期末試験を行います。
    TSB 2025年度データベース構築Ⅰ 2025.07.23
    回答 - 1 / 2 のステップ
    あなたの名前を入力すること
    あなたの学籍番号を入力すること
    あなたのメールアドレスを入力すること

    問題1:テーブル作成

    • 2つのテーブルを作成/削除するSQL文を作成すること。
      ※注意点:テーブル名は、下記のルールで命名すること。 (+はテーブル名に入れません)
      1-1.自分が作成した2つのテーブル(学生マスタ/学科マスタ)を削除(Drop Table)すること。
           (!テーブルが無い場合には、エラーになりますが、気にせずに回答してください!)
      1-2.下記ルールにそって2つのテーブル(学生マスタ/学科マスタ)を作成(Create Table)すること。
           s+学籍番号+_+テーブル名   例)s25000000_students_mst

    問題2:データ登録

    • 問1にて作成したテーブル(自分が作成した)にINSERT文を利用し、2つ全てテーブルの全データを移行すること。
      また、デリートインサート(デリイン)を利用して、エラーが発生せずに何回も登録できるようにすること。
      ◆自分が作成したテーブル
      s+
      自分の学籍番号_students_mst
      s+
      自分の学籍番号_departsment_mst
      ◆元データ
      students_mst
      departsment_mst

    問題3:データ抽出

    • (自分が作成した)学生マスタの全カラムを取得すること。
      但し、テーブルには別名を必ず付けること。

    問題4:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。

    問題5:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。
      条件:「削除されていないデータ」を抽出すること。

    問題6:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。
      条件:「削除されていないデータ」を抽出すること。
      かつ「学生ID」が5以上のデータを抽出すること。

    問題7:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。
      条件:「削除されていない」データを抽出すること。
      かつ「学生ID」が10未満のデータを抽出すること。

    問題8:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。
      条件:「削除されていないデータ」を抽出すること。
      もしくは「学生ID」が1のデータを抽出すること。

    問題9:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。
      条件:「学生ID」が1のデータを抽出すること。
      もしくは「学生ID」が2のデータを抽出すること。
      もしくは「学生ID」が3のデータを抽出すること。
      もしくは「学生ID」が5のデータを抽出すること。
      ※IN句は使用しないこと。

    問題10:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」を選択(表示)すること。
      条件:「学生名」が「田」を含むデータを抽出すること。
      もしくは「学生名」が「山」から始まるデータを抽出すること。
      更に上記の中から「削除されていないデータ」を抽出すること。

    問題11:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」と「学生名カナ」と「学科ID」を選択(表示)すること。
      条件:「学科ID」がNULLのデータを抽出すること。
      もしくは「学生名カナ」が空のデータを抽出すること。

    問題12:データ抽出

    • (自分が作成した)学生マスタのデータを取得すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学生ID」と「学生名」と「年齢」を選択(表示)すること。
      条件:「削除されていないデータ」を抽出すること。
      並び替え:「年齢」を昇順で並び替えすること。

    問題13:データ抽出

    • (自分が作成した)学生マスタの「テスト点数」の平均点を算出すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「テスト点数」の平均点を選択(表示)すること。

    問題14:データ抽出

    • (自分が作成した)学生マスタの「テスト点数」の最低点を算出すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「テスト点数」の最低点を選択(表示)すること。
      条件:「削除されていないデータ」を抽出すること。

    問題15:データ抽出

    • (自分が作成した)学生マスタの「テスト点数」の平均点を算出すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学科ID」と「テスト点数」の平均点を選択(表示)すること。
      集計の単位:「学科ID」ごとに集計すること。
      条件:「削除されていないデータ」を抽出すること。

    問題16:データ抽出

    • (自分が作成した)学生マスタの「テスト点数」の平均点を算出すること。
      但し、テーブルには別名を必ず付けること。
      カラムは、「学科ID」と「テスト点数」の平均点を選択(表示)すること。
      集計の単位:「学科ID」ごとに集計すること。
      条件:「削除されていないデータ」を抽出すること。
      集計後条件:「テスト点数」の平均点が、65点以上のデータを抽出すること。

    問題17:データ抽出

    • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
      どちらにも結合するためのキーが含まれているもののみを結合すること。
      カラムは、「学生ID」と「学生名」と「学科名」を選択(表示)すること。

    問題18:データ抽出

    • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
      但し、学生マスタのデータがすべて含まれるように結合すること。
      カラムは、「学生ID」と「学生名」と「学科名」を選択(表示)すること。
      条件:学生マスタと学科マスタともに「削除されていないデータ」を抽出すること。

    問題19:データ抽出

    • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
      但し、学生マスタのデータがすべて含まれるように結合すること。
      カラムは、「学生ID」と「学生名」と「学科名」を選択(表示)すること。
      条件:学生マスタと学科マスタともに「削除されていないデータ」を抽出すること。
      かつ「性別」が男性のデータを抽出すること。
      並び替え:「学科名」を昇順で並び替えすること。

    問題20:データ抽出

    • (自分が作成した)学生マスタと学科マスタを結合し「テスト点数」の平均点を算出すること。
      但し、学生マスタのデータがすべて含まれるように結合すること。
      カラムは、「学科ID」と「学科名」と「テスト点数」の平均点を選択(表示)すること。
      条件:学生マスタと学科マスタともに「削除されていないデータ」を抽出すること。
      かつ「性別」が男性のデータを抽出すること。
      集計の単位:「学科ID」と「学科名」ごとに集計すること。
      集計後条件:「テスト点数」の平均点が、50点以上のデータを抽出すること。
      並び替え:「学科名」を昇順で並び替えすること。

    問題21:データ登録

    • (自分が作成した)学生マスタに下記の値で、データを登録すること。
    student_id 1000
    student_name TSB TARO
    student_name_kana ティエスビー タロウ
    student_number 22000000
    department_id 5
    gender 0
    age 40
    test_score 80
    insert_at now()
    update_at now()

    問題22:データ更新

    • (自分が作成した)学生マスタに下記の値でレコード更新すること。
      条件:「学生ID」が1000のデータ
      更新:テスト点数を60

    問題23:データ更新

    • (自分が作成した)学生マスタの下記の条件に一致するデータを「論理削除」すること。
      条件:「学生ID」が1000のデータ

    問題24:データ削除

    • (自分が作成した)学生マスタの下記の条件に一致するデータを「物理削除」すること。
      条件:「学生ID」が1000のデータ

    問題25:トランザクション処理

    • トランザクション処理を実行すること。
    • 自分が作成した「students_mst」テーブルに値を登録すること。
    • ロールバック(rollback)「前」に、自分が作成した「students_mst」のすべてのカラムを抽出すること。
    • ロールバック(rollback)し、データ登録前に戻すこと。
    • ロールバック(rollback)「後」に、自分が作成した「students_mst」のすべてのカラムを抽出すること。
    student_id 2000
    student_name 自分の名前
    student_name_kana 自分の名前カタカナ
    student_number 自分の学籍番号
    department_id 任意の番号
    gender 0
    age 40
    test_score 90
    insert_at now()
    update_at now()

     

    問題26:トランザクション処理

    • トランザクション処理を実行すること。
    • 自分が作成した「students_mst」テーブルに値を登録すること。
    • コミット(commit)「前」に、自分が作成した「students_mst」のすべてのカラムを抽出すること。
    • コミット(commit)し、データ登録を確定すること。
    • コミット(commit)「後」に、自分が作成した「students_mst」のすべてのカラムを抽出すること。
    student_id 2000
    student_name 自分の名前
    student_name_kana 自分の名前カタカナ
    student_number 自分の学籍番号
    department_id 任意の番号
    gender 0
    age 40
    test_score 90
    insert_at now()
    update_at now()