評価基準

  1. SQLを記述し提出するところまでを判定。
  2. SQLが正しく記述されているかを判定。
  3. 100~90 点をS評価、89~80 点をA評価、79~70 点をB評価、69~60 点をC評価、59以下を不合格とする。
    ※D 評価の場合、追再試となります。但し、追再試で認定された場合、最高 C 評価とする。
  4. 欠席0回(+10 点)、欠席1回(+5点)、欠席2回(0点)、欠席3回(—5点)、欠席4回(—10点)、欠席5回(—15点)

    注意点

    1. パソコン、携帯等の電子機器の持ち込みは可能。
    2. テスト開始後に、問題の解き方やソフト操作などについての質問は不可。但し、問題に不備がある場合には、相談すること。
    3. 授業で習った資料やSQLの参考書など、自由に持ち込み使用することが可能。但し、試験中の私語があった場合やメールチャットなどのソフトを利用した相談があった場合には、試験停止し0 点とする。
      また、ChatGPT などのAI を利用することも禁止する。
    4. テーブル削除/データ登録/データ更新/データ削除は、必ず自分が作成したテーブルで行うこと。万が一、誤って削除した場合には、0 点とする場合がある。
    5. テーブル構成は、「テーブルレイアウト」を基準とする。
      TSB 2025年度データベース構築Ⅰ 2025.09.10(前期考査)
      回答 - Step 1 of 2
      あなたの名前を入力すること
      あなたの学籍番号を入力すること
      あなたのメールアドレスを入力すること

      問題1:テーブル作成(5点)

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

      問題2:データ登録(5点)

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

      問題3:データ抽出(5点)

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

      問題4:データ抽出(5点)

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

      問題5:データ抽出(5点)

      • (自分が作成した)学生マスタのデータを取得すること。
        但し、テーブルには別名を必ず付けること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「学科ID」と「年齢」と「テスト点数」を選択(表示)すること。
        条件:「削除されていない(正常な)データ」を抽出すること。
        かつ「学籍番号」が「2」で終わるデータを抽出すること。
        かつ「学科ID」が「2」のデータを抽出すること。

      問題6:データ抽出(5点)

      • (自分が作成した)学生マスタのデータを取得すること。
        但し、テーブルには別名を必ず付けること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「学科ID」と「年齢」と「テスト点数」を選択(表示)すること。
        条件:「削除されていない(正常な)データ」を抽出すること。
        かつ「学生ID」が「15」より大きいデータを抽出すること。
        かつ「学生ID」が「20」以下データを抽出すること。

      問題7:データ抽出(5点)

      • (自分が作成した)学生マスタのデータを取得すること。
        但し、テーブルには別名を必ず付けること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「学科ID」と「年齢」と「テスト点数」を選択(表示)すること。
        条件:「学生ID」が「1,2,6,10,18」のデータを抽出すること。
        ※IN句を使用すること。

      問題8:データ抽出(5点)

      • (自分が作成した)学生マスタのデータを取得すること。
        但し、テーブルには別名を必ず付けること。
        問題7の回答を「or」を使用して解答すること。
        ※IN句を使用しないこと。

      問題9:データ抽出(5点)

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

      問題10:データ抽出(5点)

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

      問題11:データ抽出(5点)

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

      問題12:データ抽出(5点)

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

      問題13:データ抽出(5点)

      • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
        どちらにも結合するためのキーが含まれているもののみを結合すること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「(学生マスタ)学科ID」と「学科名」と「年齢」と「テスト点数」を選択(表示)すること。
        結合前条件:学生マスタと学科マスタともに「削除されていない(正常な)データ」を抽出すること。
        結合後条件:「年齢」が30歳以上のデータを抽出すること。

      問題14:データ抽出(5点)

      • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
        どちらにも結合するためのキーが含まれているもののみを結合すること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「(学生マスタ)学科ID」と「学科名」と「年齢」と「テスト点数」を選択(表示)すること。
        結合前条件:学生マスタと学科マスタともに「削除されていない(正常な)データ」を抽出すること。
        結合後条件:「テスト点数」が50点より大きいデータを抽出すること。
        かつ、「テスト点数」が90点より小さいデータを抽出すること。
        並び替え:「学生名カナ」を昇順で並び替えすること。

      問題15:データ抽出(5点)

      • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
        但し、「left join」を利用し、学生マスタのデータがすべて含まれるように結合すること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「(学生マスタ)学科ID」と「学科名」と「年齢」と「テスト点数」を選択(表示)すること。
        結合前条件:学生マスタと学科マスタともに「削除されていない(正常な)データ」を抽出すること。
        結合後条件:「テスト点数」が50点より大きいデータを抽出すること。
        かつ、「テスト点数」が90点より小さいデータを抽出すること。
        並び替え:「学生名カナ」を昇順で並び替えすること。

      問題16:データ抽出(5点)

      • (自分が作成した)学生マスタと学科マスタを結合しデータを取得すること。
        但し、「right join」を利用し、学生マスタのデータがすべて含まれるように結合すること。
        カラムは、「学生ID」と「学生名」と「学生名カナ」と「学籍番号」と「(学生マスタ)学科ID」と「学科名」と「年齢」と「テスト点数」を選択(表示)すること。
        結合前条件:学生マスタと学科マスタともに「削除されていない(正常な)データ」を抽出すること。
        結合後条件:「テスト点数」が50点より大きいデータを抽出すること。
        かつ、「テスト点数」が90点より小さいデータを抽出すること。
        並び替え:「学生名カナ」を昇順で並び替えすること。

      問題17:データ登録(5点)

      • (自分が作成した)学生マスタに下記の値で、データを登録すること。
        同じ、学生NOで、何度も登録できるようにデリイン(デリートインサート)を利用すること。
      student_id 1500
      student_name TBA TEST
      student_name_kana ティビーエー テスト
      student_number 25001500
      department_id 5
      gender 0
      age 30
      test_score 85
      insert_at now()
      update_at now()

      問題18:データ更新(5点)

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

      問題19:データ抽出(10点)

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