Re: Fwd: Query parameter types not recognized

From: Roberto Balarezo <rober710(at)gmail(dot)com>
To: Arjen Nienhuis <a(dot)g(dot)nienhuis(at)gmail(dot)com>
Cc: pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: Fwd: Query parameter types not recognized
Date: 2017-02-10 21:55:04
Message-ID: CALN83z6yA0ssV5CqL9-s7djKnAOjo8NoVRy9npSP_ksZSFXO=A@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

Hi Arjen,

I already tried that too. In that case, the error changes to
`org.postgresql.util.PSQLException: ERROR: COALESCE types timestamp without
time zone and interval cannot be matched`.

I listed all the operators available for dates, and `+` and `-` take a date
and an integer to return a date with one day added. So the query is correct.

2017-02-10 16:33 GMT-05:00 Arjen Nienhuis <a(dot)g(dot)nienhuis(at)gmail(dot)com>:

>
>
> On Feb 10, 2017 8:11 PM, "Roberto Balarezo" <rober710(at)gmail(dot)com> wrote:
>
> Hi, I would like to know why this is happening and some advice if there is
> a way to solve this problem:
>
> I have a query like this:
>
> select COALESCE(duedate, ? + 1) from invoices order by duedate desc limit 10;
>
> where ? is a query parameter. I’m using JDBC to connect to the database,
> and sending parameters like this:
>
> query.setDate(1, defaultDueDate);
>
> If you want to add to a date you cannot just add 1. You need an interval:
> coalesce(duedate, ? + interval '1 day')
>
> See:
>
> https://www.postgresql.org/docs/9.6/static/functions-datetime.html
>

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Adrian Klaver 2017-02-10 21:57:31 Re: Fwd: Query parameter types not recognized
Previous Message Roberto Balarezo 2017-02-10 21:51:24 Re: Fwd: Query parameter types not recognized