Study Case Menghitung Kehadiran Siswa Berdasarkan Tanggal dan Kelas di MySQL
Tutorial ini membahas cara melacak kehadiran siswa berdasarkan tanggal dan kelas menggunakan MySQL. Dengan metode ini, Anda dapat memantau kehadiran siswa, mengetahui tingkat absensi, dan menganalisis pola kehadiran.
Langkah-langkah
1. Persiapan Database dan Tabel
Buat tabel bernama kehadiran_siswa untuk menyimpan data kehadiran siswa.
Query Membuat Tabel:
CREATE TABLE kehadiran_siswa (
id INT PRIMARY KEY AUTO_INCREMENT,
nama_siswa VARCHAR(100) NOT NULL,
kelas VARCHAR(50) NOT NULL,
tanggal DATE NOT NULL,
status_kehadiran ENUM('Hadir', 'Tidak Hadir', 'Izin', 'Sakit') NOT NULL
);
Penjelasan Kolom:
id: ID unik untuk setiap catatan kehadiran.
nama_siswa: Nama siswa.
kelas: Kelas siswa.
tanggal: Tanggal kehadiran.
status_kehadiran: Status kehadiran siswa (Hadir, Tidak Hadir, Izin, atau Sakit).
2. Memasukkan Contoh Data
Tambahkan data ke tabel untuk simulasi.
Query Menambahkan Data:
INSERT INTO kehadiran_siswa (nama_siswa, kelas, tanggal, status_kehadiran)
VALUES
('Andi', 'Kelas 10A', '2025-01-01', 'Hadir'),
('Budi', 'Kelas 10A', '2025-01-01', 'Tidak Hadir'),
('Citra', 'Kelas 10A', '2025-01-01', 'Hadir'),
('Andi', 'Kelas 10A', '2025-01-02', 'Hadir'),
('Budi', 'Kelas 10A', '2025-01-02', 'Sakit'),
('Citra', 'Kelas 10A', '2025-01-02', 'Izin');
Data pada Tabel:
3. Melihat Kehadiran Berdasarkan Tanggal
Untuk melacak siapa saja yang hadir pada tanggal tertentu, gunakan query berikut.
Query SQL:
SELECT
nama_siswa,
kelas,
tanggal,
status_kehadiran
FROM
kehadiran_siswa
WHERE
tanggal = '2025-01-01';
Hasil Query:
4. Melihat Rekap Kehadiran per Kelas
Hitung jumlah kehadiran, ketidakhadiran, izin, dan sakit per kelas.
Query SQL:
SELECT
kelas,
status_kehadiran,
COUNT(*) AS jumlah
FROM
kehadiran_siswa
GROUP BY
kelas, status_kehadiran;
Hasil Query:
5. Melihat Kehadiran Berdasarkan Siswa
Lacak kehadiran seorang siswa dalam periode tertentu.
Query SQL:
SELECT
nama_siswa,
kelas,
tanggal,
status_kehadiran
FROM
kehadiran_siswa
WHERE
nama_siswa = 'Andi';
Hasil Query:
6. Melihat Persentase Kehadiran per Siswa
Hitung persentase kehadiran setiap siswa.
Query SQL:
SELECT
nama_siswa,
kelas,
COUNT(CASE WHEN status_kehadiran = 'Hadir' THEN 1 END) AS jumlah_hadir,
COUNT(*) AS total_hari,
ROUND((COUNT(CASE WHEN status_kehadiran = 'Hadir' THEN 1 END) / COUNT(*)) * 100, 2) AS persentase_kehadiran
FROM
kehadiran_siswa
GROUP BY
nama_siswa, kelas;
Hasil Query:
Dengan tutorial ini, Anda dapat:
- Melacak kehadiran siswa pada tanggal tertentu.
- Membuat rekap kehadiran berdasarkan kelas atau individu.
- Menghitung persentase kehadiran siswa.
Pendekatan ini dapat digunakan untuk mendukung evaluasi kehadiran siswa dan meningkatkan pengelolaan kelas. Dengan dasar metode yang disampaikan dapat juga disesuaikan dengan kondisi misalkan menambahkan Nomor Induk Siswa sebagai ID agar tidak terdapat kesalahan jika ada nama siswa yang sama. Semoga bermanfaat dan mohon maaf jika terdapat kesalahan informasi yang disampaikan.
Comments
Post a Comment