Re: the IN clause saga

From: Joe Conway <mail(at)joeconway(dot)com>
To: Kris Jurka <books(at)ejurka(dot)com>
Cc: Fernando Nasser <fnasser(at)redhat(dot)com>, Darin Ohashi <DOhashi(at)maplesoft(dot)com>, Felipe Schnack <felipes(at)ritterdosreis(dot)br>, Oliver Jowett <oliver(at)opencloud(dot)com>, pgsql-jdbc(at)postgresql(dot)org
Subject: Re: the IN clause saga
Date: 2003-07-23 03:21:44
Message-ID: 3F1DFF48.2000905@joeconway.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Kris Jurka wrote:
> Perhaps these cases would also be illustrative as I believe that is what
> Fernando was suggesting.
>
> template1=# select 1 where 1 in (array[1,2,3]);
> ERROR: Unable to identify an operator '=' for types 'integer' and 'integer[]'
> You will have to retype this query using an explicit cast
> IN: op_error (parse_oper.c:608)
> ERROR: Unable to identify an operator '=' for types 'integer' and 'integer[]'
> You will have to retype this query using an explicit cast

Right, as I said, this syntax is trying to compare the scalar value to
the entire array value, not its elements.

> template1=# select 1 where 1 in ([1,2,3]);
> ERROR: syntax error at or near "["
> IN: yyerror (scan.l:596)
> ERROR: syntax error at or near "[" at character 22

And this syntax was never valid and still isn't.

Joe

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message Barry Lind 2003-07-23 03:26:51 Re: Statement.executeQuery() and no results
Previous Message Oliver Jowett 2003-07-23 03:01:33 Re: Statement.executeQuery() and no results