2016-03-21 4 views
1

Я использую этот запрос select * from table_nm where table_nm_date > NOW() - INTERVAL '24 hour'Как выбрать 24-часовые записи с помощью Postgres?

Но давая сегодняшние записи тоже. Пожалуйста, помогите мне.

Output : "2016-03-20 19:31:11.896159", 
     "2016-03-21 08:24:58.223245", 
     "2016-03-21 09:13:59.768953", 
     "2016-03-21 09:51:25.161428", 
     "2016-03-21 11:35:07.378706" 

Я хочу только данные 2016-03-20.

ответ

3

Если вы хотите вчерашних данных, фильтр только для даты:

SELECT * 
FROM table_nm 
WHERE table_nm_date BETWEEN CURRENT_DATE - 1 AND CURRENT_DATE 

(который является индексом дружественного варианта :)

WHERE table_nm_date::date = CURRENT_DATE - 1 
+0

Спасибо, что работает :) –

0

Предполагая, что table_nm_date обычной даты-время например, тип данных , тогда ваш запрос отклоняется, чтобы выбрать «любая запись за последние 24 часа».

Если вы хотите исключить «сегодняшние» записи, вы должны исключить их соответствующим образом, например, используя table_nm_date между START_OF_WINDOW и END_OF WINDOW, задав обе границы, которые соответствуют вашим потребностям.

 Смежные вопросы

  • Нет связанных вопросов^_^