Read 1116 times | Created 2016-05-18 03:40:08 | Updated 2016-05-18 04:21:05 | | |
CREATE TABLE praktikum( id INT AUTO_INCREMENT PRIMARY KEY, waktu_awal_prak TIME, waktu_akhir_prak TIME ); INSERT INTO praktikum(waktu_awal_prak,waktu_akhir_prak) VALUES ('07:00:00','08:30:00'), ('08:40:00','10:10:00'), ('10:20:00','11:50:00'), ('12:00:00','13:30:00'), ('13:40:00','15:10:00'), ('15:20:00','16:50:00'); SELECT * FROM praktikum; +----+-----------------+------------------+ | id | waktu_awal_prak | waktu_akhir_prak | +----+-----------------+------------------+ | 1 | 07:00:00 | 08:30:00 | | 2 | 08:40:00 | 10:10:00 | | 3 | 10:20:00 | 11:50:00 | | 4 | 12:00:00 | 13:30:00 | | 5 | 13:40:00 | 15:10:00 | | 6 | 15:20:00 | 16:50:00 | +----+-----------------+------------------+ 6 rows in set (0.00 sec) CREATE TABLE jadwal_mk( id INT AUTO_INCREMENT PRIMARY KEY, waktu_awal_mk TIME, waktu_akhir_mk TIME ); INSERT INTO jadwal_mk(waktu_awal_mk,waktu_akhir_mk) VALUES ('07:50:00','08:40:00'), ('07:50:00','08:40:00'), ('08:40:00','09:30:00'), ('08:40:00','09:30:00'), ('12:00:00','12:50:00'), ('12:50:00','13:40:00'), ('13:40:00','14:30:00'); SELECT * FROM jadwal_mk; +----+---------------+----------------+ | id | waktu_awal_mk | waktu_akhir_mk | +----+---------------+----------------+ | 1 | 07:50:00 | 08:40:00 | | 2 | 07:50:00 | 08:40:00 | | 3 | 08:40:00 | 09:30:00 | | 4 | 08:40:00 | 09:30:00 | | 5 | 12:00:00 | 12:50:00 | | 6 | 12:50:00 | 13:40:00 | | 7 | 13:40:00 | 14:30:00 | +----+---------------+----------------+ 7 rows in set (0.00 sec) SELECT a.*,COUNT(*) as jml FROM praktikum a JOIN jadwal_mk b ON (a.waktu_awal_prak>=b.waktu_akhir_mk OR a.waktu_akhir_prak<=b.waktu_awal_mk) GROUP BY a.id HAVING jml=(SELECT COUNT(*) FROM jadwal_mk); +------+-----------------+------------------+-----+ | id | waktu_awal_prak | waktu_akhir_prak | jml | +------+-----------------+------------------+-----+ | 3 | 10:20:00 | 11:50:00 | 7 | | 6 | 15:20:00 | 16:50:00 | 7 | +------+-----------------+------------------+-----+ 2 rows in set (0.00 sec)