Change Database
This commit is contained in:
23
create_functions.sql
Normal file
23
create_functions.sql
Normal file
@@ -0,0 +1,23 @@
|
||||
-- Function untuk menghitung rata-rata IPK mahasiswa aktif
|
||||
CREATE OR REPLACE FUNCTION get_ipk_rata_aktif()
|
||||
RETURNS TABLE(rata_rata_ipk_aktif NUMERIC) AS $$
|
||||
BEGIN
|
||||
RETURN QUERY
|
||||
SELECT ROUND(AVG(m.ipk), 2) AS rata_rata_ipk_aktif
|
||||
FROM status_mahasiswa sm
|
||||
JOIN mahasiswa m ON sm.nim = m.nim
|
||||
WHERE sm.status_kuliah = 'Aktif' AND m.ipk IS NOT NULL;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
|
||||
-- Function untuk menghitung rata-rata IPK mahasiswa lulus
|
||||
CREATE OR REPLACE FUNCTION get_ipk_rata_lulus()
|
||||
RETURNS TABLE(rata_rata_ipk_lulus NUMERIC) AS $$
|
||||
BEGIN
|
||||
RETURN QUERY
|
||||
SELECT ROUND(AVG(m.ipk), 2) AS rata_rata_ipk_lulus
|
||||
FROM status_mahasiswa sm
|
||||
JOIN mahasiswa m ON sm.nim = m.nim
|
||||
WHERE sm.status_kuliah = 'Lulus' AND m.ipk IS NOT NULL;
|
||||
END;
|
||||
$$ LANGUAGE plpgsql;
|
||||
Reference in New Issue
Block a user