interval и мой запрос

Аяяйка

Новичок
interval и мой запрос

Всем привет!

Есть задача выборки одних данных при условии. Если сегодняшняя дата меньше или равно даты записанной на один день, то выбираем данные. Правильно и коректно ли сделал


Где date в таком формате - 08.09.2010

PHP:
SELECT usr.id, hash.hash FROM users."user" AS "usr"  right JOIN users."hash" as "hash"
 ON hash.user_id = usr.id and usr.login = 're674' WHERE (NOW() - hash.date) <= INTERVAL '1 DAY'
спасибо!
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: *****
формат date имеет в базе формат 2010-09-08
Код:
postgres=# set datestyle to german;
SET
postgres=# select now();
             now
-----------------------------
 06.09.2010 11:48:01.956 MSD
(1 row)
-~{}~ 06.09.10 11:51:

Автор оригинала: Аяяйка
Есть задача выборки одних данных при условии. Если сегодняшняя дата меньше или равно даты записанной на один день, то выбираем данные. Правильно и коректно ли сделал
Сформулируй задачу поточнее: требуется выбирать записи за "вчера" и "сегодня" / выбирать записи, заведённые не позднее, чем за сутки с текущего момента?
 

Активист

Активист
Команда форума
Аяяйка
> которые не старее одних суток
Вам только законы писать с такими формулировками.

Записи за последние сутки:
WHERE hash.date > NOW() - INTERVAL '1 DAY'
 

Sad Spirit

мизантроп (Старожил PHPClub)
Команда форума
Автор оригинала: Аяяйка
выбирать записи, которые не старее одних суток
Ну при такой формулировке для начала поле hash.date должно быть типа timestamp.
А выбирать --- либо как щас, либо where age(hash.date) <= '1 day';
 
Сверху