Database - Exercises
Database - Exercises
5-7Buatlah sebuah tabel student_scores yang berisi nilai ujian yang diperoleh oleh
setiap siswa di suatu mata pelajaran. Tabel Anda aka memiliki kolom-kolom berikut ini:
a. Student ID (nomor pokok siswa seperti yang terdapat pada tabel students)
b. Subject (nama pelajaran)
c. Exam Type (jenis ujian, contoh: UH (Ulangan Harian), UTS, UAS, UP (ujian
praktikum)
d. Letter Grade (nilai huruf: A, B, C, D, E)
e. Percent Grade(nilai angka: 0-100)
2. Istilah tabel student_scores yang telah Anda buat dengan 5-7 baris yang
merepresentasikan nilai ujian seorang siswa.
Asumsikan bahwa seorang siswa dapat mengikuti lebih dari 1 jenis ujian di berbagai
mata pelajaran. Data nilai yang disimpan di tabel student_scores harus dimiliki oleh
seorang siswa yang terdapat pada tabel students.
3. (Opsional) Tambahkan kolom Exam Date yang berisi tanggal pelaksanaan suatu ujian
ke dalam tabel student_scores. Kemudian, isikan nilai kolom tersebut untuk setiap baris.
4. Hapuslah nilai seluruh siswa yang mendapatkan nilai angka lebih dari 90 dari tabel
student_scores.
5. Ambillah pegawai yang pernah menerima gaji diatas 60000 sejak tanggal 25 juni
1990, diurutkan berdasarkan nomor induk pegawai (menurun). Tampilkan nomor
induk, jumlah gaji, dan sejak kapan nominal gaji tersebut diterapakan ke pegawai
tersebut. (jika jumlah baris output terlalu banyak, silahkan batasi jumlah baris.
6. Ambilah data pegawai (nomor induk pegawai, nama depan, nama belakang) yang
memiliki nama depan yang diawali dengan huruf ‘A’.
7. Ambilah data pegawai (nomor induk pegawai, nama depan, nama belakang) yang
lahir tahun 1955.
8. Ambilah nomor induk pegawai yang pernah berposisi sebagai engineer, baik yang junior
maupun senior.
10. Hitunglah ada berapa pegawai pria dan wanita di dalam perusahaan ini.
11. Hitunglah ada berapa pegawai yang mulai dipekerjakan sejak tahun 1986 hingga
1996.
12. Hitunglah ada berapa pegawai yang pernah menduduki posisi sebagai Senior Engineer
sejak tahun 1986 (berdasarkan from_date).
13. Hitunglah ada berapa pegawai di apartemen d001, d002, dan d003.
14. Munculkan 20 contoh nama lengkap pegawai dengan nama depan berawalan
huruf ‘F’ dan nama belakang berakhiran huruf ‘k’.
15. (Bonus) Hitunglah masing-masing jumlah pegawai pria dan wanita dengan nama depan
berawal huruf ‘F’ dan nama belakang berakhiran huruf ‘K’.
16. Hitunglah jumlah pegawai yang diangkat menjadi manager di tiap tahunnya (sejak tahun
1986 hingga 1989).
17. Carilah masa kerja paling sebentar yang pernah dijalani seorang pegawai di suatu
departmen.
18. (Bonus) Tampilan selisih antara gaji terkecil dna gaji terbesar yang pernah
diterima oleh setiap pegawai. Cukup tampilkan 20 pegawai dengan selisih gaji
paling jauh.
19. Munculkan daftar pegawai yang memiliki masa kerja paling sebentar (emp_no, tenure,
dept.)
20. Tampilkan jumlah pegawai laki-laki dan perempuan di setiap departemen dengan
format tabel: nomor departmen, nama departemen, jenis kelamin, jumlah pegawai.
21. Hitunglah jumlah pegawai yang sedang / pernah menjabat sebagai Senior
Engineer dan lahir dibulan Januari 1953.
22. Tampilkan jumlah pegawai yang pernah menjabat di setiap posisi yang tersedia di setiap
departemen. Urutkan berdasarkan jumlah pegawai terbanyak.
23. (Bonus) Berdasarkan jawaban no 22, batasi output query dengan hanya menampilkan
posisi di sebuah departemen dengan lebih dari 10.000 pegawai.
24. Carilah nama lengkap pegawai yang paling sering mengalami perubahan nominal gaji
(jika ada lebih dari satu, tampilkan satu orang saja dengan employee_number paling
awal). + berapa kali perubahan gajinya.
25. Tampilkan jabatan dan nominal gaji paling terakhir yang dimiliki oleh setiap pegawai.
26. Tampilkan posisi (title) apa saja yang tidak pernah dipegang oleh pegawai manapun di
dipartemen d001.
27. Tampilkan seluruh pegawai wanita yang lahir di antara tahun 1955 hingga 1960. Berikan
pula sebuah kolom keterangan worked_at_d002, dimana jika pegawai tersebut pernah /
sedang bekerja di departemen d002, berikan keterangan ‘Yes’, namun jika tidak, berikan
keterangan ‘No’.