Re: Unable to identify a right operator '>=' for type 'bpchar'

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Unable to identify a right operator '>=' for type 'bpchar'
Дата
Msg-id 7602.959186017@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Unable to identify a right operator '>=' for type 'bpchar'  (Michael Ma <mikema@ficnet.net>)
Список pgsql-sql
Michael Ma <mikema@ficnet.net> writes:
> While running the following SQL statement in postgresql-7.0-1 via
> JDBC,

>    select a.cus_code, a.dlv_code, b.cus_abbr, a.dlv_abbr,
>           a.address, a.tel, a.fax, a.contact
>      from dlv_point a, customer b
>     where ((a.cus_code >= ? and a.cus_code <= ?)
>           or (b.cus_abbr >= ? and b.cus_abbr <= ?))
>       and trim(b.cus_code) = trim(a.cus_code)
>     order by 1 ;

> I got the following error message:

>    Unable to identify a right operator '>=' for type 'bpchar'
>    You may meed to add parentheses or an explicit cast.

It looks to me like the parser is thinking that "a.cus_code >= ?"
must represent application of a suffix operator '>=' followed by
application of another suffix operator '?'.  Which is indeed about
the only way it could make any sense of the expression.

I assume you were expecting something to get substituted for the '?'
marks before the query is submitted, but it evidently didn't happen ...
        regards, tom lane


В списке pgsql-sql по дате отправления:

Предыдущее
От: Michael Ma
Дата:
Сообщение: Unable to identify a right operator '>=' for type 'bpchar'
Следующее
От: Thomas Holmgren
Дата:
Сообщение: Why is PostgreSQL 7.0 SQL semantics different from Oracle's?