How to convert postgres timestamp to date: yyyy-mm-dd
Hi All,
I'm a novice but learning quickly and I'm stumped on how to do this.
I need to convert postgres timestamp to date format yyyy-mm-dd in a
sql statement.
pt.created_date below is timestamp format
i.e ... WHERE pt.created_date >= '2008-01-21'
Any help would be greatly appreciated.
Thanks, Case
I need to convert postgres timestamp to date format yyyy-mm-dd in a
sql statement.
pt.created_date below is timestamp formati.e ... WHERE pt.created_date >= '2008-01-21'
Any help would be greatly appreciated.
Try this:
WHERE pt.created_date >= '2008-01-21'::date
am Tue, dem 11.03.2008, um 10:51:21 -0700 mailte CaseT folgendes:
Hi All,
I'm a novice but learning quickly and I'm stumped on how to do this.
I need to convert postgres timestamp to date format yyyy-mm-dd in a
sql statement.
pt.created_date below is timestamp formati.e ... WHERE pt.created_date >= '2008-01-21'
You can't compare a date or timestamp to a varchar or text. For your
example, cast the date-string to a real date like:
... WHERE pt.created_date >= '2008-01-21'::date
Consider also functions like to_date(), see:
http://www.postgresql.org/docs/current/static/functions-formatting.html
Andreas
--
Andreas Kretschmer
Kontakt: Heynitz: 035242/47150, D1: 0160/7141639 (mehr: -> Header)
GnuPG-ID: 0x3FFF606C, privat 0x7F4584DA http://wwwkeys.de.pgp.net
On Mar 11, 2008, at 2:50 PM, A. Kretschmer wrote:
i.e ... WHERE pt.created_date >= '2008-01-21'
You can't compare a date or timestamp to a varchar or text. For your
example, cast the date-string to a real date like:
Since which version of Pg?
Queries like the above have worked for me from 7.3 up thru 8.1, which
is my current production environment.
Vivek Khera <vivek@khera.org> writes:
On Mar 11, 2008, at 2:50 PM, A. Kretschmer wrote:
i.e ... WHERE pt.created_date >= '2008-01-21'
You can't compare a date or timestamp to a varchar or text. For your
example, cast the date-string to a real date like:
Since which version of Pg?
Queries like the above have worked for me from 7.3 up thru 8.1, which
is my current production environment.
The above example is not in fact comparing to a varchar or text value.
It's comparing to an unknown-type literal constant, which will
preferentially be resolved as being the same type as the variable
it's being compared to.
Whether you can do a cross-data-type comparison between two variables of
known data types is a whole 'nother story. PG 8.3 insists on an
explicit cast in some cases where earlier versions silently did a
(possibly surprising) type conversion.
regards, tom lane
A. Kretschmer wrote on 11.03.2008 19:50:
am Tue, dem 11.03.2008, um 10:51:21 -0700 mailte CaseT folgendes:
Hi All,
I'm a novice but learning quickly and I'm stumped on how to do this.
I need to convert postgres timestamp to date format yyyy-mm-dd in a
sql statement.
pt.created_date below is timestamp formati.e ... WHERE pt.created_date >= '2008-01-21'
You can't compare a date or timestamp to a varchar or text. For your
example, cast the date-string to a real date like:... WHERE pt.created_date >= '2008-01-21'::date
You can also use the ANSI standard for specifying date literals:
WHERE pt.created_date >= DATE '2008-01-21'
which will work with other (standard compliant) DBMS as well.
Thomas