select @j := @j + 1 mon
from 表名,
((select @n := 17 - DATE_FORMAT(STR_TO_DATE('2019-12-09 15:33', '%Y-%m-%d %H:%i:%s'), '%H')) b),
(select @j := 24 - @n) c
where @j < 24
union
SELECT @m := @m + 1 mon
FROM 表名,
(SELECT @m := 0) a
where @m < DATE_FORMAT(STR_TO_DATE('2019-12-09 15:33', '%Y-%m-%d %H:%i:%s'), '%H');