Re: BUG #3435: problem with substring function

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #3435: problem with substring function
Дата
Msg-id 19104.1184076961@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Re: BUG #3435: problem with substring function  ("Pavel Stehule" <pavel.stehule@gmail.com>)
Список pgsql-bugs
"Pavel Stehule" <pavel.stehule@gmail.com> writes:
> It has little bit strange behave on 8.3. It works well, but I have to
> use casting.

> postgres=# select substring('1234' from to_number('3', '999999')::int for 3);
>  substring
> -----------
>  34
> (1 row)

Yeah, the OP is getting burnt by an implicit cast to text, which the
parser picks because there is no implicit cast from numeric to integer
... but substring(text,text,text) has completely different behavior
from substring(text,int,int).

The reason we got rid of most implicit casts to text for 8.3 was exactly
to stop surprising choices like this one.

>> This is a sample, really i like to use an expression using date_part() as
>> the first parameter for substring.

There's no implicit cast from float8 to integer, either.

            regards, tom lane

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

Предыдущее
От: "FAGOT Alain"
Дата:
Сообщение: BUG #3436: inherited primary keys are not reported as primary key by the Java DatabaseMetaData
Следующее
От: Tom Lane
Дата:
Сообщение: Re: BUG #3436: inherited primary keys are not reported as primary key by the Java DatabaseMetaData