Gunakan:
SELECT t.user_id,
SEC_TO_TIME(SUM(TIME_TO_SEC(t.endtime) - TIME_TO_SEC(t.starttime))) AS timediff
FROM MYTABLE t
GROUP BY t.user_id
Langkah-langkah:
- Gunakan TIME_TO_SEC untuk mengonversi WAKTU ke detik untuk operasi matematika
- Jumlah selisihnya
- Gunakan SEC_TO_TIME untuk mengubah detik kembali ke WAKTU
Berdasarkan data sampel, saya baru saja menyarankan:
SELECT t.user_id,
TIMEDIFF(MIN(t.startdate), MAX(t.enddate)) AS timediff
FROM MYTABLE t
GROUP BY t.user_id