Подтвердить что ты не робот

Поиск записей с полем даты за последние 24 часа

В моем SQL-запросе, как я могу найти записи за последние 24 часа? Например,

   SELECT * FROM news WHERE date < 24 hours

Обычно я делаю это, устанавливая переменную date() - 1 день и сравнивая ее с этим, но я задавался вопросом, быстрее ли был запрос sql-запроса?

4b9b3361

Ответ 1

Вы просто выбираете даты, которые превышают текущее время минус 1 день.

SELECT * FROM news WHERE date >= now() - INTERVAL 1 DAY;

Ответ 2

SELECT * FROM news WHERE date > DATE_SUB(NOW(), INTERVAL 24 HOUR)

Ответ 3

SELECT * from new WHERE date < DATE_ADD(now(),interval -1 day);

Ответ 4

Чтобы получить записи за последние 24 часа:

SELECT * from [table_name] WHERE date > (NOW() - INTERVAL 24 HOUR)

Ответ 5

SELECT * FROM news WHERE date > DATEADD(d,-1,GETDATE())

Ответ 6

Существует так много способов сделать это. Перечисленные работы отлично работают, но здесь другой способ, если у вас есть поле datetime:

SELECT [fields] 
FROM [table] 
WHERE timediff(now(), my_datetime_field) < '24:00:00'

timediff() возвращает объект времени, поэтому не делайте ошибку, сравнивая его с 86400 (количество секунд в день), или ваш результат будет всевозможным.

Ответ 7

SELECT * FROM news WHERE date < DATEADD(Day, -1, date)