SELECT CONCAT(
FLOOR(HOUR(TIMEDIFF('2010-01-06 08:46', '2010-01-01 12:30')) / 24), ' days ',
MOD(HOUR(TIMEDIFF('2010-01-06 08:46', '2010-01-01 12:30')), 24), ' hours ',
MINUTE(TIMEDIFF('2010-01-06 08:46', '2010-01-01 12:30')), ' minutes')
Gunakan end_time dan start_time Anda untuk nilai datetime tetap dalam contoh saya
Sesuai dua komentar di bawah, solusi ini hanya berfungsi untuk perbedaan tanggal dalam 35 hari. Jika Anda tahu ada lebih dari 35 hari antara awal dan akhir, yaitu perbedaan selama sebulan, jangan gunakan itu. Jawaban lain di sini menggunakan TIMESTAMPDIFF akan berfungsi.