Contoh Soal SQL Berikut Jawabannya

Tuesday 3 July 2012

Skema Tabel-Tabel Sebagai Berikut :
Mahasiswa(NPM,NAMA,LAHIR,AGAMA,ALAMAT,KOTA,KODE_POS,TELEPON)
Matakuliah(KODE_MK,NAMA_MK,SKS,STATUS)
Dosen(KODE_DOSEN,NAMA_DOSEN,ALAMAT,KOTA,KODE_POS,TELEPON)
Prestasi(NPM,KODE_DOSEN,KODE_MK,NIL_MID,NIL_FIN)


  1.  Tambahkan atribut agama pada table dosen.
  2. Tampilkan semua field pada semua table mata kuliah yang mempunyai sks sama dengan 3 dan urutkan secara menurun berdasarkan nama mata kuliah.
  3. Tampilkan semua field dari table biodata yang tinggal di Jakarta dan mempunyai kode pos.
  4. Tampilkan NPM, nama dan nama mata kuliah dari mahasiswa yang memiliki nilai final lebih kecil dari 60.
  5. Tampilkan NPM, nama, nama mata kuliah dan nama dosen dari mahasiswa yang mengambil mata kuliah Perancangan Sistem.
  6. Tampilkan NPM, nama, nama mata kuliah dan nilai total dari mahasiswa yang memiliki nilai total lebih besar dari 100 dan urutkan data berdasarkan nama mata kuliah.
  7. Tampilkan nama mahasiswa, nama mata kuliah, nilai mid test dan nilai final test yang mengambil mata kuliah dengan kode ‘TI221’
  8. Tampilkan jumlah dari mata kuliah yang diajarkan pada table prestasi.
  9. Tampilkan kode dan nama dosen yang mengajar lebih dari 1 mata kuliah.
  10. Tampilkan nama dan nilai mid test lebih besar dari 75 (gunakan perintah sub select).


JAWAB

  1. ALTER TABLE Dosen ADD(AGAMA char(16));
  2.  SELECT * FROM Matakuliah WHERE SKS=3 ORDER BY NAMA_MK DESC;
  3. SELECT * FROM Biodata WHERE KOTA="Jakarta" AND KODE_POS NOT LIKE "% %";
  4. SELECT NPM, NAMA, NAMA_MK FROM Mahasiswa,Matakuliah,Prestasi WHERE Mahasiswa.NPM=Prestasi.NPM AND Prestasi.KODE_MK=Matakuliah.KODE_MK AND Prestasi.NIL_FIN<60;
  5. SELECT NPM,NAMA,NAMA_MK,NAMA_DOSEN FROM Mahasiswa, Matakuliah, Dosen, Prestasi WHERE Matakuliah.NAMA_MK = "Perancangan Sistem" AND Mahasiswa.NPM = Prestasi.NPM AND Prestasi.KODE_DOSEN = Dosen.KODE_DOSEN AND Prestasi.KODE_MK = Matakuliah.KODE_MK;
  6. SELECT mahasiswa.npm, mahasiswa.nama, matakuliah.nama_mk, prestasi.nil_fin FROM mahasiswa,matakuliah,prestasi WHERE mahasiswa.npm=prestasi.npm AND matakuliah.kode_mk=prestasi.kode_mk AND prestasi.nil_fin > 100 ORDER BY nama_mk ASC;
  7. SELECT mahasiswa.nama, matakuliah.nama_mk, prestasi.nil_mid, prestasi.nil_fin FROM mahasiswa, matakuliah , prestasi, WHERE mahasiswa.npm=prestasi.npm AND matakuliah.kode_mk=prestasi.kode_mk AND prestasi.kode_mk='TI221';
  8. SELECT COUNT(kode_mk) FROM prestasi;
  9. SELECT COUNT(prestasi.kode_dosen) AS jumlah_mk, dosen.kode_dosen, dosen.nama_dosen FROM dosen,prestasi WHERE dosen.kode_dosen = prestasi.kode_dosen GROUP BY dosen.kode_dosen HAVING jumlah_mk > 1;
  10. SELECT mahasiswa.nama, prestasi.nil_mid FROM mahasiswa,prestasi WHERE mahasiswa.npm=prestasi.npm AND (SELECT prestasi.nil_mid > 75);

2 comments:

Unknown said...

thank's kk
punya table sama databasenya kk?

Unknown said...

thank's kk
punya table sama databasenya kk?

Post a Comment