Professional Documents
Culture Documents
f) Banyaknya employee dari setiap department dan urutkan berdasarkan employee terbanyak ?
SELECT dnum, COUNT(dnum) AS jumlah_employee_department
FROM employee GROUP BY dnum ORDER BY jumlah_employee_department DESC;
h) Employee yang memiliki total hours perweek lebih besar dari 140 hours dan urutkan berdasarkan jumlah jam
kerja terbanyak?
SELECT essn, SUM(hours)
FROM works_on
GROUP BY essn HAVING SUM(hours) > ’140’ ORDER BY SUM(hours) DESC;
i) Kelompokkan bonus employee berdasarkan jumlah jam kerjanya ? (Jika >= 200 hours, maka bonus = 50%; Jika
>= 150 hours, maka bonus = 25%, Selainnya bonus = 10%)
SELECT essn, SUM(hours),
CASE
WHEN SUM(hours) >= 200 THEN ’50%’
WHEN SUM(hours) >= 150 THEN ’25%’
ELSE ’10%’
END AS bonus
FROM works_on
GROUP BY essn
ORDER BY SUM(hours) DESC;
j) Banyaknya project yang dikerjakan tiap employee dan urutkan dari yang terbanyak ?
SELECT essn, COUNT(pnum) AS jumlah_project
FROM works_on
GROUP BY essn ORDER BY COUNT(pnum) DESC;
l) Employee yang memiliki rata-rata hours perweek = 70 jam dan bekerja pada 2 project ?
SELECT essn, COUNT(pnum) AS jumlah_project, AVG(hours)
FROM works_on
GROUP BY essn HAVING AVG(hours) = ’70’ AND COUNT(pnum) = ’2’;