Тип DATE используется для значений с частью даты, но без временной части.
Тип DATETIME используется для значений, которые содержат как дату, так и временные части
В качестве time datetimeтипа данных он включает временную часть, которая будет учитываться во время сравнения.
Если вас интересует только dateсравнение, timeвы не можете использовать первый запрос
Если вы хотите, чтобы timeчасть учитывалась во время сравнения, то перейдите со вторым запросом
DEMO
select NOW() > CURDATE();
# output : 1
select date(NOW()) > CURDATE();
# output : 0