Tipe data TIME
tidak termasuk pengetahuan tentang rentang tanggal (3:00 dalam kueri Anda mewakili 3:00 hari berikutnya). Anda harus menangani ini sendiri:
SELECT columns
FROM table
WHERE
(cast('18:00' as time) <= cast('3:00' as time) and match_time between '18:00' AND '3:00')
OR
(cast('18:00' as time) > cast('3:00' as time) and (match_time >= '18:00' or match_time<='3:00'));
Lihat db-fiddle .