Я ищу пункт where
, который может использоваться для извлечения записей за последние 24 часа?Как выбрать записи за последние 24 часа с помощью SQL?
ответ
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
Если записи хранятся как 'DATETIME', это будет выбирать все записи с предыдущей даты, без учета временной части. Пробег в '23: 59: 59', запрос вернет все записи за последние 48 часов, а не' 24'. – Quassnoi
Если вы хотите выбрать последние 24 часа из поля datetime, замените 'curate()' на 'now()'. Это также включает время. – Haentz
select ...
from ...
where YourDateColumn >= getdate()-1
В MySQL
:
SELECT *
FROM mytable
WHERE record_date >= NOW() - INTERVAL 1 DAY
В SQL Server
:
SELECT *
FROM mytable
WHERE record_date >= DATEADD(day, -1, GETDATE())
В Oracle
:
SELECT *
FROM mytable
WHERE record_date >= SYSDATE - 1
В PostgreSQL
:
SELECT *
FROM mytable
WHERE record_date >= NOW() - '1 day'::INTERVAL
В Redshift
:
SELECT *
FROM mytable
WHERE record_date >= GETDATE() - '1 day'::INTERVAL
В SQLite
:
SELECT *
FROM mytable
WHERE record_date >= datetime('now','-1 day')
В MS Access
:
SELECT *
FROM mytable
WHERE record_date >= (Now - 1)
Я пытаюсь выполнить запрос для mysql, но если его 2AM, например, я получаю записи с 00 до 02 AM. Два часа, а не 24. Любые идеи? – Manos
Мне очень нравится предлагаемое решение, только то, что я заметил в MySQL, - это производительность решения _Guillaume Flandre_ была быстрее. – oneworld
Отличный ответ! – Bertie
SELECT *
FROM tableName
WHERE datecolumn >= dateadd(hour,-24,getdate())
Какого SQL не был определен, SQL 2005/2008
SELECT yourfields from yourTable WHERE yourfieldWithDate > dateadd(dd,-1,getdate())
Если вы находитесь на 2008 году увеличился типы даты точности, а затем использовать функцию нового sysdatetime() вместо этого, в равной степени при использовании UTC раз внутренне поменять в UTC звонки.
В SQL Server (За последние 24 часа):
SELECT *
FROM mytable
WHERE order_date > DateAdd(DAY, -1, GETDATE()) and order_date<=GETDATE()
Зачем вам нужно добавлять "и order_date <= GETDATE()", когда вы уже ищите последние 24 часа в момент выхода этого запроса? Нет смысла иметь эту часть в предложении where, когда у вас есть «GETDATE», уже упомянутый в первом. Вам лучше сделать это «order_date> = DateAdd (DAY, -1, GETDATE())» вот оно! – KMX
в Postgres, предполагается, что ваш тип поля является отметка о времени:
выберите * из таблицы, где date_field> (теперь() - интервал «24 часа»);
MySQL:
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 24 HOUR)
Интервал может быть в год, месяц, день, час, минута, секунда
К примеру, за последние 10 минут
SELECT *
FROM table_name
WHERE table_name.the_date > DATE_SUB(NOW(), INTERVAL 10 MINUTE)
Это ответ, который наилучшим образом отвечает на конкретный вопрос: как вернуть PRECEDING 24 HOURS (с настоящего момента), в отличие от предыдущих 24 (который предлагает все результаты за предыдущий день). Это отвечало моим требованиям, это дает мне преимущество. EDIT: Стоит отметить столбец table_name.the_date, который должен быть отметкой времени. –
Если рассматриваемая временная метка является отметкой времени UNIX Вам необходимо сначала преобразовать отметку времени UNIX (например, 1462567865) в timestamp mysql или данные
SELECT * FROM `orders` WHERE FROM_UNIXTIME(order_ts) > DATE_SUB(CURDATE(), INTERVAL 1 DAY)
Привет, теперь я прошел через много времени с оригинального сообщения, но у меня возникла аналогичная проблема, и я хочу поделиться.
У меня есть поле datetime с этим форматом YYYY-MM-DD hh: mm: ss, и я хочу получить доступ целый день, так что вот мое решение.
Функция DATE(), в MySQL: извлечение части даты выражения даты или даты и времени.
SELECT * FROM `your_table` WHERE DATE(`your_datatime_field`)='2017-10-09'
с этим я получаю весь регистр строк в этот же день.
Я надеюсь, что это поможет любому.
- 1. выбрать записи с датой за последние 24 часа
- 2. фильтр sql-запрос за последние 24 часа
- 3. Просмотреть записи SQL, введенные за последние 24 часа
- 4. Как сгенерировать файлы за последние 24 часа
- 5. DynamoDB Downscales за последние 24 часа?
- 6. listing посещения за последние 24 часа
- 7. Получить последние 24 часа данные из SQL
- 8. Как рассчитать посетителей за последние 24 часа?
- 9. Самые просматриваемые темы за последние 24 часа
- 10. Проверьте, есть ли записи за последние 24 часа
- 11. MySQL: записи, введенные по часам, за последние 24 часа
- 12. Записи за последние 24 часа добавлены к мастеру
- 13. Поиск записей с полем времени за последние 24 часа
- 14. Рассчитать количество событий за последние 24 часа с помощью Redis
- 15. SELECT наиболее просматриваемые за последние 24 часа
- 16. Получить последние 24 часа записи записи работы msdb.dbo.sysjobhistory
- 17. Получить последние 24 часа с выбранной даты с помощью SQL
- 18. поле метки времени для вывода записей за последние 24 часа
- 19. JFreeChart - TimeSeries последние 24 часа
- 20. Как фильтровать значения datetime за последние 24 часа в HQL?
- 21. MySQL, Coldfusion, Выбор записей, отмеченных за последние 24 часа
- 22. Как выбрать последние 24 часа строк из смещения строки
- 23. Как получить время безотказной работы системы за последние 24 часа
- 24. Состояние SSIS: Как получить результаты за последние 24 часа
- 25. Количество посещений за последние 24 часа, разбито по часам
- 26. Как найти пользователей, подключенных к серверу за последние 24 часа?
- 27. Как получить данные за последние 24 часа сверху в рельсах
- 28. В Python как искать файлы, созданные за последние 24 часа?
- 29. Как получить строки за последние 24 часа по unixstamp
- 30. Как получить последние данные за 24 часа в postgreSQL
У вас есть метка в этих записях? –