> 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?
SQL> select lpad('abcd', 3, 'foobar') from dual;
LPA
---
abc
> Also, what happens if the specified length is less than zero? Error,
> or is it treated as zero?
SQL> select ':' || lpad('abcd', -1, 'foobar') || ':' from dual;
':
--
::
(colons added so it's obvious that it's a zero-length string)
-Jonathan