From: | "Jan Bilek" <bilekj(at)gmail(dot)com> |
---|---|
To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: JDBC - Prepared statements and PostgreSql Time/Date operations |
Date: | 2007-05-18 22:15:49 |
Message-ID: | 002201c7999a$17f89990$0100a8c0@ook |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Got it!
> "Jan Bilek" <bilekj(at)gmail(dot)com> writes:
>> I would like to use this query in java PreparedStatement, where age of a
>> =
>> row would be one of its parameters:
>
>> PreparedStatement could look like this:
>> select * from mytable where creation_time > (CURRENT_TIMESTAMP - ?)
>
>> But nothing works with PreparedStatements!
>> I tried to set whole interval strings "interval '7 days'" as a parameter
>> I tried to set time strings '7 days' as a parameter
>> I tried to use BigDecimal as a parameter...
>
> I'm not sure that Java has a type corresponding to "interval". Instead
> use number-times-interval multiplication:
>
> ... creation_time > (CURRENT_TIMESTAMP - ? * interval '1 day')
Integer-interval multiplication is the way!!!
Many thanks for quick help.
(Java seems not to have oracle/postgre interval type)
>
> The parameter is now of plain integer or float type.
>
> regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Shane | 2007-05-18 22:19:27 | Database corruption |
Previous Message | Tom Lane | 2007-05-18 21:26:45 | Re: JDBC - Prepared statements and PostgreSql Time/Date operations |