AW: Oracle-compatible lpad/rpad behavior

Поиск
Список
Период
Сортировка
От Zeugswetter Andreas SB
Тема AW: Oracle-compatible lpad/rpad behavior
Дата
Msg-id 11C1E6749A55D411A9670001FA68796336816D@sdexcsrv1.f000.d0188.sd.spardat.at
обсуждение исходный текст
Список pgsql-general
> >> Perhaps they *should* truncate if the specified length is less than
> >> the original string length.  Does Oracle do that?
>
> > Yes, it truncates, same as Informix.
>
> I went to fix this and then realized I still don't have an adequate spec
> of how Oracle defines these functions.  It would seem logical, for
> example, that lpad might truncate on the left instead of the right,
> ie lpad('abcd', 3, 'whatever') might yield 'bcd' not 'abc'.  Would
> someone check?

returns 'abc' on Oracle and Informix.

>
> Also, what happens if the specified length is less than zero?  Error,
> or is it treated as zero?

Returns NULL in both if length <= 0. I would see the < 0 case as proper,
but the == 0 case sure looks weird to me.

Very good catch, Tom !! :-)
Andreas

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

Предыдущее
От: "Brett W. McCoy"
Дата:
Сообщение: Re: Sql query with partial matching
Следующее
От: Soma Interesting
Дата:
Сообщение: help with referential integrity