Search Postgresql Archives

Re: Doing INTERVAL with NOW() versus casted timestamp

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Wells:

The now() function returns not only the current date, but the current time. So, now() - 24 hours returns yesterday at this time. But, yesterday at 00:00:00 is not greater than or equal to yesterday at the current time (unless, of course, you happened to run this at precisely 00:00:00 ...).

I believe that if you use the current_date function, instead of now(), and subtract 24 hours from that, then you will get the behavior that you expect.

Good luck,

John

On 2/16/2013 7:25 AM, Wells Oliver wrote:
Why does this give me two different results? 'created' is a date field:

SELECT * FROM foo WHERE created >= '2013-02-16 00:00:00'::timestamp - INTERVAL '24 hours'

and

SELECT * FROM foo WHERE created >= NOW() - INTERVAL '24 hours'

First returns the 12 rows I expect where the 'created' field is 2012-02-15, second returns only one.

Thank you.




--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux