Advertisement
hilmawanyr

Untitled

Feb 7th, 2020
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MySQL 2.73 KB | None | 0 0
  1. SELECT
  2.                                     IF(a.gabung = 0, a.hari,
  3.                                         (SELECT hari FROM tbl_jadwal_matkul WHERE kd_jadwal = a.referensi)) AS hari,
  4.                                     IF(a.gabung = 0, a.waktu_selesai,
  5.                                         (SELECT waktu_selesai FROM tbl_jadwal_matkul WHERE kd_jadwal = a.referensi)) AS waktu_selesai,
  6.                                     IF(a.gabung = 0, a.waktu_mulai,
  7.                                         (SELECT waktu_mulai FROM tbl_jadwal_matkul WHERE kd_jadwal = a.referensi)) AS waktu_mulai,
  8.                                     IF(a.gabung = 0, kd_matakuliah,
  9.                                         (SELECT kd_matakuliah FROM tbl_jadwal_matkul WHERE kd_jadwal = a.referensi)) AS kd_matakuliah,
  10.                                     IF(a.gabung = 0, a.kelas,
  11.                                         (SELECT kelas FROM tbl_jadwal_matkul WHERE kd_jadwal = a.referensi)) AS kelas,
  12.                                     IF(a.gabung = 0, b.kuota,
  13.                                         (SELECT r.kuota FROM tbl_ruangan r JOIN tbl_jadwal_matkul j ON r.id_ruangan = j.kd_ruangan WHERE j.kd_jadwal = a.referensi)) AS kuota,
  14.                                     IF(a.gabung = 0, b.ruangan,
  15.                                         (SELECT r.ruangan FROM tbl_ruangan r JOIN tbl_jadwal_matkul j ON r.id_ruangan = j.kd_ruangan WHERE j.kd_jadwal = a.referensi)) AS ruangan,
  16.                                     IF(a.gabung = 0, b.kode_ruangan,
  17.                                         (SELECT r.kode_ruangan FROM tbl_ruangan r JOIN tbl_jadwal_matkul j ON r.id_ruangan = j.kd_ruangan WHERE kd_jadwal = a.referensi)) AS kode_ruangan,
  18.                                     IF(a.gabung = 0, c.nama,
  19.                                         (SELECT k.nama FROM tbl_karyawan k JOIN tbl_jadwal_matkul j ON k.nid = j.kd_dosen WHERE kd_jadwal = a.referensi)) AS nama,
  20.                                     IF(a.gabung <> 0,a.`referensi`, a.`kd_jadwal`) AS kd_jadwal,
  21.                                     (SELECT COUNT(DISTINCT z.npm_mahasiswa) FROM tbl_krs z
  22.                                     WHERE z.kd_jadwal = IF(a.gabung <> 0,a.referensi,a.kd_jadwal)) AS jumlah
  23.                                 FROM tbl_jadwal_matkul a
  24.                                 LEFT JOIN tbl_ruangan b ON a.kd_ruangan = b.id_ruangan
  25.                                 LEFT JOIN tbl_karyawan c ON a.kd_dosen = c.nid
  26.                                 WHERE a.kd_matakuliah = 'MKWU-2002'
  27.                                 AND a.kd_jadwal LIKE '2/%'
  28.                                 AND a.kd_tahunajaran = '20192'
  29.                                 -- jika jadwal tersebut adalah jadwal induk maka ambil yang sesuai dengan kategori kelas mahasiswa (PG/SR/PK)
  30.                                 -- jika jadwal turunan, maka cek data jadwal induknya untuk melihat kategori kelas dari jadwal induk tsb
  31.                                 AND IF('PG' = 'PG',
  32.                                         a.waktu_kelas = 'PG',
  33.                                         a.waktu_kelas IN ('SR','PK'))
  34.                                 AND IF(SUBSTR(a.kd_matakuliah, 1,2) = 'MK',
  35.                                         a.open = 1,
  36.                                         a.open IS NULL)
  37.                                 AND IF(a.gabung = 0,
  38.                             (SUBSTR(b.kuota,1,2) - (SELECT COUNT(DISTINCT z.npm_mahasiswa) FROM tbl_krs z WHERE z.kd_jadwal = a.kd_jadwal) ) > 0,
  39.                             (SUBSTR((SELECT kuota FROM tbl_ruangan r JOIN tbl_jadwal_matkul j ON r.id_ruangan = j.kd_ruangan WHERE j.kd_jadwal = a.referensi),1,2) -
  40.                             (SELECT COUNT(DISTINCT z.npm_mahasiswa) FROM tbl_krs z WHERE z.kd_jadwal = a.kd_jadwal) ) ) > 0
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement