Skip to content

Soal Tantangan

Pada bagian ini, mahasiswa diminta menyusun view secara mandiri untuk menunjukkan pemahaman terhadap penggunaan view pada MySQL. Tantangan ini tidak lagi hanya mengikuti langkah percobaan yang sudah tersedia pada aktivitas praktikum, tetapi menuntut mahasiswa membaca kebutuhan informasi, mengenali relasi antar tabel, lalu menuliskan definisi view yang sesuai.

Agar jawaban lebih konsisten, gunakan dua tabel berikut:

  • tabel employee_join,
  • tabel job.

Gunakan struktur dan data yang sudah ditentukan pada modul ini.

Petunjuk Umum

Kerjakan tantangan ini dengan format berikut:

  1. buat dua tabel sesuai struktur yang diberikan,
  2. masukkan data sesuai sumber data yang disediakan,
  3. buat view sesuai kebutuhan soal,
  4. tampilkan hasil view,
  5. jelaskan secara singkat alasan penggunaan query pada view tersebut.

Struktur Tabel

Tabel employee_join

Gunakan struktur kolom berikut:

  • id
  • first_name
  • last_name
  • start_date
  • end_date
  • salary
  • city
  • job_id

Tabel job

Gunakan struktur kolom berikut:

  • job_id
  • title

Sumber Data

Data berikut digunakan sebagai file sumber impor menggunakan LOAD DATA.

1	Jason	Martin	1996-07-25	2006-07-25	1235.56	Toronto	1
2	Alison	Mathews	1976-03-21	1986-02-21	6662.78	Vancouver	2
3	James	Smith	1978-12-12	1990-03-15	6545.78	Vancouver	2
4	Celia	Rice	1982-10-24	1999-04-21	2345.78	Vancouver	3
5	Robert	Black	1984-01-15	1998-08-08	2335.78	Vancouver	2
6	Linda	Green	1987-07-30	1996-01-04	4323.78	New York	2
7	David	Larry	1990-12-31	1998-02-12	7898.78	New York	3
8	James	Cat	1996-09-17	2002-04-15	1233.78	Vancouver	2
10	Hercule	Poirot	1973-05-23	2001-08-09	4313.98	Brussels	5
11	Lincoln	Rhyme	1999-05-25	2011-07-13	3213.98	New York	6
12	Sherlock	Holmes	1923-08-12	1945-07-21	4124.21	London	5

Soal Tantangan 1

Buatlah view yang berisi name (gabungan first_name dan last_name), salary, city, dan job_desc dari kedua tabel.

Contoh output yang diharapkan:

+-----------------+---------+-----------+------------+
| name            | salary  | city      | job_desc   |
+-----------------+---------+-----------+------------+
| Jason Martin    | 1235.56 | Toronto   | Programmer |
| Alison Mathews  | 6662.78 | Vancouver | Tester     |
| James Smith     | 6545.78 | Vancouver | Tester     |
| Celia Rice      | 2345.78 | Vancouver | Manager    |
| Robert Black    | 2335.78 | Vancouver | Tester     |
| Linda Green     | 4323.78 | New York  | Tester     |
| David Larry     | 7898.78 | New York  | Manager    |
| James Cat       | 1233.78 | Vancouver | Tester     |
| Hercule Poirot  | 4313.98 | Brussels  | Detective  |
| Lincoln Rhyme   | 3213.98 | New York  | Forensics  |
| Sherlock Holmes | 4124.21 | London    | Detective  |
+-----------------+---------+-----------+------------+

Soal Tantangan 2

Buatlah view untuk menampilkan job_desc dan emp_count, yaitu jumlah employee untuk masing-masing job.

Contoh output yang diharapkan:

+------------+-----------+
| job_desc   | emp_count |
+------------+-----------+
| Detective  | 2         |
| Forensics  | 1         |
| Manager    | 2         |
| Programmer | 1         |
| Tester     | 5         |
+------------+-----------+

Penutup

Soal tantangan ini dirancang untuk melatih kemampuan mahasiswa dalam menyusun view secara lebih mandiri dan terarah. Melalui tantangan ini, mahasiswa tidak hanya berlatih membuat view sederhana, tetapi juga belajar memanfaatkan view untuk menyederhanakan query join dan merangkum data dalam bentuk tampilan virtual yang lebih mudah digunakan.