2013-07-18 3 views
0

Я запускаю запрос для отображения предстоящих событий и выбора событий, ближайших к текущей дате , и я также сортирую его по времени.Проблемы с временем и датой MYSQL

Предположим, что сегодняшняя дата - 18 июля 2013 года, она вытаскивает верхние 3 события, которые ближе всего к 18-му июля.

SO Если мероприятие состоится 22 июля 2013 года, он выберет три события и из-за И в запросе также проверяет время события.

Теперь, если текущее время 23:00 и время события 19:00, но событие 22 июля это обыкновение показывать это событие, потому что в соответствии с запросом оно должно быть больше, чем CURTIME ..

Так как я должен решить эту проблему .. заранее спасибо

$sql="SELECT * FROM events WHERE d_o_e>=CURDATE() AND t_o_e>=CURTIME() ORDER BY d_o_e ASC,t_o_e ASC LIMIT 3;"; 
+0

Почему вы не удалить 'И t_o_e> = CURTIME()' из запроса? – alfasin

+0

Если я удалю его, то событие, которое уже закончилось в течение дня, покажет ... –

+0

поэтому используйте '>' вместо '> =' с условием даты – alfasin

ответ

0
$sql="SELECT * FROM events WHERE d_o_e>=CURDATE() or 
(d_o_e=CURDATE() and t_o_e>=CURTIME()) ORDER BY d_o_e ASC,t_o_e ASC     LIMIT 3;"; 
Смежные вопросы