2010-11-13 4 views

ответ

3
SELECT phone 
FROM table 
WHERE lock_dt > NOW() - INTERVAL 10 HOUR 

Использование интервалов довольно удобно. Кроме того, я пытаюсь изолировать столбец, чтобы можно было использовать возможный индекс (иногда СУРБД не знают, как использовать индекс с помощью NOW() - lock_dt, даже если есть указатель на lock_dt).

Кроме того, описание проблемы не соответствует вашему запросу. NOW() - lock_dt < 10 hours означает интервал нет чем 10 часов. Это мой запрос. Вы должны изменить> <, если вы хотите больше чем 10 часов.

1
SELECT phone FROM table WHERE lock_dt < DATE_SUB(now(), interval 10 hour); 
Смежные вопросы